1800
How can I highlight somehow the child bars of a summary bar

local var_Chart as IChart
local var_Items as IItems
local hSummary,hTask as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Task")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:[PaneWidth,false] := 128
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:Bars:[Item,"Task"]:Color := RGB(240,240,240)
var_Items := oDCOCX_Exontrol1:Items
	hSummary := var_Items:AddItem("Summary")
	var_Items:AddBar(hSummary,"Project Summary",SToD("20010102"),SToD("20010102"),"",nil)
	hTask := var_Items:InsertItem(hSummary,nil,"Task A")
	var_Items:AddBar(hTask,"Task",SToD("20010102"),SToD("20010105"),"K1",nil)
	hTask := var_Items:InsertItem(hSummary,nil,"Task B")
	var_Items:AddBar(hTask,"Task",SToD("20010104"),SToD("20010108"),"K2",nil)
	hTask := var_Items:InsertItem(hSummary,nil,"Task C")
	var_Items:AddBar(hTask,"Task",SToD("20010106"),SToD("20010110"),"K3",nil)
	var_Items:[ExpandItem,hSummary] := true
	var_Items:DefineSummaryBars(hSummary,"",-1,"<*>")
	var_Items:[ItemBar,hSummary,"",exSummaryBarBackColor] := 65536
	var_Items:[ItemBar,hSummary,"",exSummaryBarBackColorTransparent] := 50
oDCOCX_Exontrol1:EndUpdate()

1799
How do I change the color for the selected bars, without showing the frame arround

local var_Chart as IChart
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20020101")
	var_Chart:SelBarColor := 0x7f0000ff
	var_Chart:[PaneWidth,false] := 48
oDCOCX_Exontrol1:Columns:Add("Task")
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddBar(var_Items:AddItem("Task 1"),"Task",SToD("20020102"),SToD("20020104"),"A",nil)
	var_Items:AddBar(var_Items:AddItem("Task 2"),"Task",SToD("20020106"),SToD("20020110"),"B",nil)
	var_Items:AddBar(var_Items:AddItem("Task 3"),"Task",SToD("20020111"),SToD("20020114"),"C",nil)
	var_Items:[ItemBar,0,"<A B>",exBarSelected] := true
oDCOCX_Exontrol1:EndUpdate()

1798
Is it possible to enumerate the activities/bars of critical path

METHOD OCX_Exontrol1BarResize(Item,Key) CLASS MainDialog
	// BarResize event - Occurs when a bar is moved or resized.
	oDCOCX_Exontrol1:Items:SchedulePDM(Item,Key)
RETURN NIL

local var_Chart as IChart
local var_Items as IItems
local h1,h2,h3,h4,hSummary1 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Tasks")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:LevelCount := 2
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:[PaneWidth,false] := 96
	var_Chart:Bars:[Item,"Task"]:[Def,exBarCaption] := "<%=int(%269) > 0 ? (`<b>` + %269 + `</b>`) : ``%>"
var_Items := oDCOCX_Exontrol1:Items
	hSummary1 := var_Items:AddItem("Summary")
	var_Items:[ItemBold,hSummary1] := true
	var_Items:AddBar(hSummary1,"Summary",SToD("20010102"),SToD("20010102"),"sum",nil)
	h1 := var_Items:AddItem("Task 1")
	var_Items:AddBar(h1,"Task",SToD("20010102"),SToD("20010104"),nil,nil)
	var_Items:DefineSummaryBars(hSummary1,"sum",h1,"")
	h2 := var_Items:AddItem("Task 2")
	var_Items:AddBar(h2,"Task",SToD("20010102"),SToD("20010104"),nil,nil)
	var_Items:DefineSummaryBars(hSummary1,"sum",h2,"")
	var_Items:AddLink("L1",h1,"",h2,"")
	h3 := var_Items:AddItem("Task 3")
	var_Items:AddBar(h3,"Task",SToD("20010102"),SToD("20010104"),nil,nil)
	var_Items:DefineSummaryBars(hSummary1,"sum",h3,"")
	var_Items:AddLink("L2",h2,"",h3,"")
	h4 := var_Items:AddItem("Task 4")
	var_Items:AddBar(h4,"Task",SToD("20010102"),SToD("20010104"),nil,nil)
	var_Items:DefineSummaryBars(hSummary1,"sum",h4,"")
	var_Items:AddLink("L3",h1,"",h4,"")
	var_Items:[DefSchedulePDM,exPDMCriticalPathBarColor] := 65280
	var_Items:SchedulePDM(h1,"")
oDCOCX_Exontrol1:EndUpdate()

1797
How can I add a SF link

local var_Chart as IChart
local var_Items as IItems
local h1,h2,h3,h4,h5 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Task")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20001225")
	var_Chart:[PaneWidth,false] := 48
	var_Chart:LevelCount := 2
var_Items := oDCOCX_Exontrol1:Items
	h1 := var_Items:AddItem("Task 1")
	var_Items:AddBar(h1,"Task",SToD("20010102"),SToD("20010104"),"K1",nil)
	h2 := var_Items:AddItem("Task 2")
	var_Items:AddBar(h2,"Task",SToD("20010102"),SToD("20010105"),"K2",nil)
	h3 := var_Items:AddItem("Task 3")
	var_Items:AddBar(h3,"Task",SToD("20010102"),SToD("20010105"),"K3",nil)
	h4 := var_Items:AddItem("Task 4")
	var_Items:AddBar(h4,"Task",SToD("20010102"),SToD("20010105"),"K4",nil)
	h5 := var_Items:AddItem("Task 5")
	var_Items:AddBar(h5,"Task",SToD("20010102"),SToD("20010105"),"K5",nil)
	var_Items:AddLink("L1",h1,"K1",h2,"K2")
	var_Items:AddLink("L2",h2,"K2",h3,"K3")
	var_Items:AddLink("L3",h3,"K3",h4,"K4")
	var_Items:AddLink("L4",h4,"K4",h5,"K5")
	var_Items:[Link,"L4",exLinkStartPos] := 0
	var_Items:[Link,"L4",exLinkEndPos] := 2
	var_Items:[Link,"L4",exLinkColor] := 65280
	var_Items:SchedulePDM(0,"K5")
oDCOCX_Exontrol1:Chart:ShowLinks := exShowExtendedLinks
oDCOCX_Exontrol1:EndUpdate()

1796
How do I get the Start and End date of a bar

local var_Chart as IChart
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Tasks")
oDCOCX_Exontrol1:Debug := true
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20060920")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 96
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddBar(var_Items:AddItem("Task 1"),"Task",SToD("20060921"),SToD("20060924"),"K1",nil)
	var_Items:AddBar(var_Items:AddItem("Task 2"),"Task",SToD("20060922"),SToD("20060925"),"K2",nil)
	var_Items:AddBar(var_Items:AddItem("Task 3"),"Task",SToD("20060923"),SToD("20060926"),"K3",nil)
	h := var_Items:[ItemByIndex,1]
	var_Items:[ItemBold,h] := true
	OutputDebugString(String2Psz( "Start of " ))
	OutputDebugString(String2Psz( AsString(var_Items:[FirstItemBar,h]) ))
	OutputDebugString(String2Psz( AsString(var_Items:[ItemBar,h,var_Items:[FirstItemBar,h],exBarStart]) ))
	OutputDebugString(String2Psz( "End of  " ))
	OutputDebugString(String2Psz( AsString(var_Items:[FirstItemBar,h]) ))
	OutputDebugString(String2Psz( AsString(var_Items:[ItemBar,h,var_Items:[FirstItemBar,h],exBarEnd]) ))
oDCOCX_Exontrol1:EndUpdate()

1795
I haven't found options to change/localize (in German, or my current regional settings) the captions/text/strings ( dates, tooltip ) that shows in the chart area (method 2)

local var_Chart as IChart

var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstWeekDay := var_Chart:LocFirstWeekDay
	var_Chart:MonthNames := var_Chart:LocMonthNames
	var_Chart:WeekDays := var_Chart:LocWeekDays
	var_Chart:AMPM := var_Chart:LocAMPM
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 0
	var_Chart:UnitScale := exDay

1794
Is it possible to change caption of the print and print preview, as it just says "Untitled Document", but I cant find the code that writes this caption

local var_Print as IExPrint
local var_Items as IItems
local h1,h2 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Task")
oDCOCX_Exontrol1:Chart:FirstVisibleDate := SToD("20010101")
var_Items := oDCOCX_Exontrol1:Items
	h1 := var_Items:AddItem("Task 1")
	var_Items:AddBar(h1,"Task",SToD("20010102"),SToD("20010104"),"K1",nil)
	h2 := var_Items:AddItem("Task 2")
	var_Items:AddBar(h2,"Task",SToD("20010105"),SToD("20010107"),"K2",nil)
	var_Items:AddLink("L1",h1,"K1",h2,"K2")
oDCOCX_Exontrol1:EndUpdate()
// Generate Source for 'ExPrint 1.0 Control Library(ExPrint.dll)' server from Tools\Automation Server...
var_Print := IExPrint{"Exontrol.Print"}
	var_Print:Caption := "This is your new caption for print and print preview"
	var_Print:AutoRelease := false
	var_Print:PrintExt := oDCOCX_Exontrol1
	var_Print:Preview()

1793
Is it possible to specify the A4 paper size for the print preview
local var_Print as IExPrint
local var_Items as IItems
local h1,h2 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Task")
oDCOCX_Exontrol1:Chart:FirstVisibleDate := SToD("20010101")
var_Items := oDCOCX_Exontrol1:Items
	h1 := var_Items:AddItem("Task 1")
	var_Items:AddBar(h1,"Task",SToD("20010102"),SToD("20010104"),"K1",nil)
	h2 := var_Items:AddItem("Task 2")
	var_Items:AddBar(h2,"Task",SToD("20010105"),SToD("20010107"),"K2",nil)
	var_Items:AddLink("L1",h1,"K1",h2,"K2")
oDCOCX_Exontrol1:EndUpdate()
// Generate Source for 'ExPrint 1.0 Control Library(ExPrint.dll)' server from Tools\Automation Server...
var_Print := IExPrint{"Exontrol.Print"}
	var_Print:[Settings,0] := 9
	var_Print:AutoRelease := false
	var_Print:PrintExt := oDCOCX_Exontrol1
	var_Print:Preview()

1792
Is it possible to tell the print preview to open up in "landscape mode" by default, not in "portrait mode"
local var_Print as IExPrint
local var_Items as IItems
local h1,h2 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Task")
oDCOCX_Exontrol1:Chart:FirstVisibleDate := SToD("20010101")
var_Items := oDCOCX_Exontrol1:Items
	h1 := var_Items:AddItem("Task 1")
	var_Items:AddBar(h1,"Task",SToD("20010102"),SToD("20010104"),"K1",nil)
	h2 := var_Items:AddItem("Task 2")
	var_Items:AddBar(h2,"Task",SToD("20010105"),SToD("20010107"),"K2",nil)
	var_Items:AddLink("L1",h1,"K1",h2,"K2")
oDCOCX_Exontrol1:EndUpdate()
// Generate Source for 'ExPrint 1.0 Control Library(ExPrint.dll)' server from Tools\Automation Server...
var_Print := IExPrint{"Exontrol.Print"}
	var_Print:PageOrientation := 2
	var_Print:AutoRelease := false
	var_Print:PrintExt := oDCOCX_Exontrol1
	var_Print:Preview()

1791
How do I prevent a caption outside the bar from overlapping other bars

local var_Chart as IChart
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ScrollBySingleLine := true
oDCOCX_Exontrol1:Columns:Add("Task")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:[PaneWidth,false] := 48
	var_Chart:Bars:Copy("Task","Default-Task")
	var_Chart:Bars:[Item,"Task"]:OverlaidType := exOverlaidBarsIncludeCaption | exOverlaidBarsStackAutoArrange | exOverlaidBarsStack
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Task 1")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010104"),"A1","task")
	var_Items:[ItemBar,h,"A1",exBarHAlignCaption] := 18
	var_Items:AddBar(h,"Task",SToD("20010106"),SToD("20010110"),"A2","task")
	var_Items:[ItemBar,h,"A2",exBarHAlignCaption] := 16
	h := var_Items:AddItem("Task 2")
	var_Items:AddBar(h,"Default-Task",SToD("20010102"),SToD("20010104"),"A1","task")
	var_Items:[ItemBar,h,"A1",exBarHAlignCaption] := 18
	var_Items:AddBar(h,"Default-Task",SToD("20010106"),SToD("20010110"),"A2","task")
	var_Items:[ItemBar,h,"A2",exBarHAlignCaption] := 16
oDCOCX_Exontrol1:EndUpdate()

1790
How do I clip/hide/align the bar's extra-caption/text based on the bar's size/width/length

local var_Bar as IBar
local var_Chart as IChart
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Clip")
oDCOCX_Exontrol1:ScrollBySingleLine := true
oDCOCX_Exontrol1:DrawGridLines := exRowLines
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:AllowResizeChart := exAllowResizeChartMiddle | exAllowResizeChartHeader
	var_Chart:DrawGridLines := exRowLines
	var_Chart:FirstVisibleDate := SToD("20001223")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 216
	var_Bar := var_Chart:Bars:[Item,"Task"]
		var_Bar:Pattern := exPatternBox
		var_Bar:Color := RGB(164,164,164)
		var_Bar:StartColor := RGB(240,240,240)
		var_Bar:EndColor := var_Bar:StartColor
		var_Bar:OverlaidType := exOverlaidBarsIncludeCaption | exOverlaidBarsStackAutoArrange | exOverlaidBarsStack
		var_Bar:Height := 15
	var_Chart:MinUnitWidth := var_Chart:UnitWidth
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("no clip, (0-2)")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010104"),"K1",nil)
	var_Items:[ItemBar,h,"K1",exBarExtraCaption] := "no clip, right(<b>2</b>)"
	var_Items:[ItemBar,h,"K1",exBarExtraCaptionHAlign] := 2
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010104"),"K2",nil)
	var_Items:[ItemBar,h,"K2",exBarExtraCaption] := "no clip, center(<b>1</b>)"
	var_Items:[ItemBar,h,"K2",exBarExtraCaptionHAlign] := 1
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010104"),"K3","")
	var_Items:[ItemBar,h,"K3",exBarExtraCaption] := "no clip, left(<b>0</b>)"
	var_Items:[ItemBar,h,"K3",exBarExtraCaptionHAlign] := 0
	h := var_Items:AddItem("clip, inside (3-5)")
	var_Items:AddBar(h,"Task",SToD("20001228"),SToD("20010108"),"K1",nil)
	var_Items:[ItemBar,h,"K1",exBarExtraCaption] := "clip, inside, right(<b>5</b>)"
	var_Items:[ItemBar,h,"K1",exBarExtraCaptionHAlign] := 5
	var_Items:AddBar(h,"Task",SToD("20001228"),SToD("20010108"),"K2",nil)
	var_Items:[ItemBar,h,"K2",exBarExtraCaption] := "clip, inside, center(<b>4</b>)"
	var_Items:[ItemBar,h,"K2",exBarExtraCaptionHAlign] := 4
	var_Items:AddBar(h,"Task",SToD("20001228"),SToD("20010108"),"K3",nil)
	var_Items:[ItemBar,h,"K3",exBarExtraCaption] := "clip, inside, left(<b>3</b>)"
	var_Items:[ItemBar,h,"K3",exBarExtraCaptionHAlign] := 3
	h := var_Items:AddItem("hide on min width, clip if not fit, inside (6-8)")
	var_Items:AddBar(h,"Task",SToD("20001226"),SToD("20010110"),"K1",nil)
	var_Items:[ItemBar,h,"K1",exBarExtraCaption] := "hide on min width, clip if not fit, inside, right(<b>8</b>)"
	var_Items:[ItemBar,h,"K1",exBarExtraCaptionHAlign] := 8
	var_Items:AddBar(h,"Task",SToD("20001226"),SToD("20010110"),"K2",nil)
	var_Items:[ItemBar,h,"K2",exBarExtraCaption] := "hide on min width, clip if not fit, inside, center(<b>7</b>)"
	var_Items:[ItemBar,h,"K2",exBarExtraCaptionHAlign] := 7
	var_Items:AddBar(h,"Task",SToD("20001226"),SToD("20010110"),"K3",nil)
	var_Items:[ItemBar,h,"K3",exBarExtraCaption] := "hide on min width, clip if not fit, inside, left(<b>6</b>)"
	var_Items:[ItemBar,h,"K3",exBarExtraCaptionHAlign] := 6
	h := var_Items:AddItem("hide if not fit, no clip, inside (9-11)")
	var_Items:AddBar(h,"Task",SToD("20001228"),SToD("20010108"),"K1",nil)
	var_Items:[ItemBar,h,"K1",exBarExtraCaption] := "hide if not fit, no clip, inside, right(<b>11</b>)"
	var_Items:[ItemBar,h,"K1",exBarExtraCaptionHAlign] := 11
	var_Items:AddBar(h,"Task",SToD("20001228"),SToD("20010108"),"K2",nil)
	var_Items:[ItemBar,h,"K2",exBarExtraCaption] := "hide if not fit, no clip, center(<b>10</b>)"
	var_Items:[ItemBar,h,"K2",exBarExtraCaptionHAlign] := 10
	var_Items:AddBar(h,"Task",SToD("20001228"),SToD("20010108"),"K3",nil)
	var_Items:[ItemBar,h,"K3",exBarExtraCaption] := "hide if not fit, no clip, inside, left(<b>9</b>)"
	var_Items:[ItemBar,h,"K3",exBarExtraCaptionHAlign] := 9
	h := var_Items:AddItem("no clip, inside, outside (12-14)")
	var_Items:AddBar(h,"Task",SToD("20001228"),SToD("20010108"),"K1",nil)
	var_Items:[ItemBar,h,"K1",exBarExtraCaption] := "no clip, inside, outside, right(<b>14</b>)"
	var_Items:[ItemBar,h,"K1",exBarExtraCaptionHAlign] := 14
	var_Items:AddBar(h,"Task",SToD("20001228"),SToD("20010108"),"K2",nil)
	var_Items:[ItemBar,h,"K2",exBarExtraCaption] := "no clip, inside, outside, center(<b>13</b>)"
	var_Items:[ItemBar,h,"K2",exBarExtraCaptionHAlign] := 13
	var_Items:AddBar(h,"Task",SToD("20001228"),SToD("20010108"),"K3",nil)
	var_Items:[ItemBar,h,"K3",exBarExtraCaption] := "no clip, inside, outside, left(<b>12</b>)"
	var_Items:[ItemBar,h,"K3",exBarExtraCaptionHAlign] := 12
	h := var_Items:AddItem("no clip, outside (16-18)")
	var_Items:AddBar(h,"Task",SToD("20001230"),SToD("20010106"),"K1",nil)
	var_Items:[ItemBar,h,"K1",exBarExtraCaption] := "no clip, outside, right(<b>18</b>)"
	var_Items:[ItemBar,h,"K1",exBarExtraCaptionHAlign] := 18
	var_Items:AddBar(h,"Task",SToD("20001230"),SToD("20010106"),"K2",nil)
	var_Items:[ItemBar,h,"K2",exBarExtraCaption] := "no clip, outside, center(<b>17</b>)"
	var_Items:[ItemBar,h,"K2",exBarExtraCaptionHAlign] := 17
	var_Items:AddBar(h,"Task",SToD("20001230"),SToD("20010106"),"K3",nil)
	var_Items:[ItemBar,h,"K3",exBarExtraCaption] := "no clip, outside, left(<b>16</b>)"
	var_Items:[ItemBar,h,"K3",exBarExtraCaptionHAlign] := 16
oDCOCX_Exontrol1:EndUpdate()

1789
What options do I have to show the links between bars (rectangular SEV, starts vertically, ends vertically)

local var_Chart as IChart
local var_Items as IItems
local h1,h2,h3 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:AntiAliasing := true
oDCOCX_Exontrol1:Columns:Add("Task")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:[PaneWidth,false] := 128
	var_Chart:NonworkingDays := 0
	var_Chart:LinksWidth := 2
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("")
	h3 := var_Items:AddItem("Task 3")
	var_Items:AddItem("")
	var_Items:AddBar(h3,"Task",SToD("20010113"),SToD("20010115"),"K3",nil)
	h1 := var_Items:AddItem("Task 1")
	var_Items:AddItem("")
	var_Items:AddBar(h1,"Task",SToD("20010102"),SToD("20010104"),"K1",nil)
	h2 := var_Items:AddItem("Task 2")
	var_Items:AddBar(h2,"Task",SToD("20010107"),SToD("20010109"),"K2",nil)
	var_Items:AddItem("")
	var_Items:AddLink("L1",h1,"K1",h2,"K2")
	var_Items:AddLink("L2",h2,"K2",h3,"K3")
	var_Items:[Link,"<*>",exLinkShowRound] := 5
oDCOCX_Exontrol1:EndUpdate()

1788
What options do I have to show the links between bars (rectangular SV, starts vertically, ends horizontally)

local var_Chart as IChart
local var_Items as IItems
local h1,h2,h3 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:AntiAliasing := true
oDCOCX_Exontrol1:Columns:Add("Task")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:[PaneWidth,false] := 128
	var_Chart:NonworkingDays := 0
	var_Chart:LinksWidth := 2
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("")
	h3 := var_Items:AddItem("Task 3")
	var_Items:AddItem("")
	var_Items:AddBar(h3,"Task",SToD("20010113"),SToD("20010115"),"K3",nil)
	h1 := var_Items:AddItem("Task 1")
	var_Items:AddItem("")
	var_Items:AddBar(h1,"Task",SToD("20010102"),SToD("20010104"),"K1",nil)
	h2 := var_Items:AddItem("Task 2")
	var_Items:AddBar(h2,"Task",SToD("20010107"),SToD("20010109"),"K2",nil)
	var_Items:AddItem("")
	var_Items:AddLink("L1",h1,"K1",h2,"K2")
	var_Items:AddLink("L2",h2,"K2",h3,"K3")
	var_Items:[Link,"<*>",exLinkShowRound] := 4
oDCOCX_Exontrol1:EndUpdate()

1787
What options do I have to show the links between bars (rectangular EV, starts horizontally, ends vertically)

local var_Chart as IChart
local var_Items as IItems
local h1,h2,h3 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:AntiAliasing := true
oDCOCX_Exontrol1:Columns:Add("Task")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:[PaneWidth,false] := 128
	var_Chart:NonworkingDays := 0
	var_Chart:LinksWidth := 2
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("")
	h3 := var_Items:AddItem("Task 3")
	var_Items:AddItem("")
	var_Items:AddBar(h3,"Task",SToD("20010113"),SToD("20010115"),"K3",nil)
	h1 := var_Items:AddItem("Task 1")
	var_Items:AddItem("")
	var_Items:AddBar(h1,"Task",SToD("20010102"),SToD("20010104"),"K1",nil)
	h2 := var_Items:AddItem("Task 2")
	var_Items:AddBar(h2,"Task",SToD("20010107"),SToD("20010109"),"K2",nil)
	var_Items:AddItem("")
	var_Items:AddLink("L1",h1,"K1",h2,"K2")
	var_Items:AddLink("L2",h2,"K2",h3,"K3")
	var_Items:[Link,"<*>",exLinkShowRound] := 3
oDCOCX_Exontrol1:EndUpdate()

1786
What options do I have to show the links between bars (straight)

local var_Chart as IChart
local var_Items as IItems
local h1,h2,h3 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:AntiAliasing := true
oDCOCX_Exontrol1:Columns:Add("Task")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:[PaneWidth,false] := 128
	var_Chart:NonworkingDays := 0
	var_Chart:LinksWidth := 2
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("")
	h3 := var_Items:AddItem("Task 3")
	var_Items:AddItem("")
	var_Items:AddBar(h3,"Task",SToD("20010113"),SToD("20010115"),"K3",nil)
	h1 := var_Items:AddItem("Task 1")
	var_Items:AddItem("")
	var_Items:AddBar(h1,"Task",SToD("20010102"),SToD("20010104"),"K1",nil)
	h2 := var_Items:AddItem("Task 2")
	var_Items:AddBar(h2,"Task",SToD("20010107"),SToD("20010109"),"K2",nil)
	var_Items:AddItem("")
	var_Items:AddLink("L1",h1,"K1",h2,"K2")
	var_Items:AddLink("L2",h2,"K2",h3,"K3")
	var_Items:[Link,"<*>",exLinkShowRound] := 2
oDCOCX_Exontrol1:EndUpdate()

1785
What options do I have to show the links between bars (direct)

local var_Chart as IChart
local var_Items as IItems
local h1,h2,h3 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:AntiAliasing := true
oDCOCX_Exontrol1:Columns:Add("Task")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:[PaneWidth,false] := 128
	var_Chart:NonworkingDays := 0
	var_Chart:LinksWidth := 2
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("")
	h3 := var_Items:AddItem("Task 3")
	var_Items:AddItem("")
	var_Items:AddBar(h3,"Task",SToD("20010113"),SToD("20010115"),"K3",nil)
	h1 := var_Items:AddItem("Task 1")
	var_Items:AddItem("")
	var_Items:AddBar(h1,"Task",SToD("20010102"),SToD("20010104"),"K1",nil)
	h2 := var_Items:AddItem("Task 2")
	var_Items:AddBar(h2,"Task",SToD("20010107"),SToD("20010109"),"K2",nil)
	var_Items:AddItem("")
	var_Items:AddLink("L1",h1,"K1",h2,"K2")
	var_Items:AddLink("L2",h2,"K2",h3,"K3")
	var_Items:[Link,"<*>",exLinkShowRound] := 1
oDCOCX_Exontrol1:EndUpdate()

1784
What options do I have to show the links between bars (round)

local var_Chart as IChart
local var_Items as IItems
local h1,h2,h3 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:AntiAliasing := true
oDCOCX_Exontrol1:Columns:Add("Task")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:[PaneWidth,false] := 128
	var_Chart:NonworkingDays := 0
	var_Chart:LinksWidth := 2
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("")
	h3 := var_Items:AddItem("Task 3")
	var_Items:AddItem("")
	var_Items:AddBar(h3,"Task",SToD("20010113"),SToD("20010115"),"K3",nil)
	h1 := var_Items:AddItem("Task 1")
	var_Items:AddItem("")
	var_Items:AddBar(h1,"Task",SToD("20010102"),SToD("20010104"),"K1",nil)
	h2 := var_Items:AddItem("Task 2")
	var_Items:AddBar(h2,"Task",SToD("20010107"),SToD("20010109"),"K2",nil)
	var_Items:AddItem("")
	var_Items:AddLink("L1",h1,"K1",h2,"K2")
	var_Items:AddLink("L2",h2,"K2",h3,"K3")
	var_Items:[Link,"<*>",exLinkShowRound] := -1
oDCOCX_Exontrol1:EndUpdate()

1783
What options do I have to show the links between bars (rectangular, default)

local var_Chart as IChart
local var_Items as IItems
local h1,h2,h3 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:AntiAliasing := true
oDCOCX_Exontrol1:Columns:Add("Task")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:[PaneWidth,false] := 128
	var_Chart:NonworkingDays := 0
	var_Chart:LinksWidth := 2
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("")
	h3 := var_Items:AddItem("Task 3")
	var_Items:AddItem("")
	var_Items:AddBar(h3,"Task",SToD("20010113"),SToD("20010115"),"K3",nil)
	h1 := var_Items:AddItem("Task 1")
	var_Items:AddItem("")
	var_Items:AddBar(h1,"Task",SToD("20010102"),SToD("20010104"),"K1",nil)
	h2 := var_Items:AddItem("Task 2")
	var_Items:AddBar(h2,"Task",SToD("20010107"),SToD("20010109"),"K2",nil)
	var_Items:AddItem("")
	var_Items:AddLink("L1",h1,"K1",h2,"K2")
	var_Items:AddLink("L2",h2,"K2",h3,"K3")
	var_Items:[Link,"<*>",exLinkShowRound] := 0
oDCOCX_Exontrol1:EndUpdate()

1782
I have a question about whether the control has the functionality to add two bars on the same item, as one would correspond to the item bar and another bar their progress, but progress is required to show dividedly at different times outside the activity bar item

local var_Bar,var_Bar1,var_Bar2 as IBar
local var_Chart as IChart
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Tasks")
oDCOCX_Exontrol1:BackColorLevelHeader := oDCOCX_Exontrol1:BackColor
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:LevelCount := 2
	var_Chart:FirstVisibleDate := SToD("20060920")
	var_Chart:[PaneWidth,false] := 64
	var_Bar := var_Chart:Bars:Copy("Progress","TProgressD")
		var_Bar:[Def,exBarHAlignCaption] := 18
		var_Bar:Shape := exShapeThinDown
	var_Bar1 := var_Chart:Bars:Copy("Progress","TProgressC")
		var_Bar1:[Def,exBarHAlignCaption] := 18
	var_Bar2 := var_Chart:Bars:Copy("Progress","TProgressU")
		var_Bar2:[Def,exBarHAlignCaption] := 18
		var_Bar2:Shape := exShapeThinUp
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Task")
	var_Items:AddBar(h,"Task",SToD("20060925"),SToD("20060930"),"T1",nil)
	var_Items:AddBar(h,"TProgressU",SToD("20060925"),SToD("20061004"),"TP1",nil)
	var_Items:GroupBars(h,"T1",true,h,"TP1",true,3,nil)
	var_Items:[ItemBar,h,"TP1",exBarCaption] := "<font ;6>progress up"
	h := var_Items:AddItem("Task")
	var_Items:AddBar(h,"Task",SToD("20060926"),SToD("20061001"),"T2",nil)
	var_Items:AddBar(h,"TProgressC",SToD("20060926"),SToD("20061005"),"TP2",nil)
	var_Items:GroupBars(h,"T2",true,h,"TP2",true,3,nil)
	var_Items:[ItemBar,h,"TP2",exBarCaption] := "<font ;6>progress center"
	h := var_Items:AddItem("Task")
	var_Items:AddBar(h,"Task",SToD("20060925"),SToD("20060930"),"T3",nil)
	var_Items:AddBar(h,"TProgressD",SToD("20060925"),SToD("20061006"),"TP3",nil)
	var_Items:GroupBars(h,"T3",true,h,"TP3",true,3,nil)
	var_Items:[ItemBar,h,"TP3",exBarCaption] := "<font ;6>progress down"
oDCOCX_Exontrol1:EndUpdate()

1781
I have a column of date-type, the question is how can I move the associated bar, instead of resizing it (summary, inclusive, working)

local var_Bar,var_Bar1 as IBar
local var_Bars as IBars
local var_Chart as IChart
local var_Column,var_Column1 as IColumn
local var_Columns as IColumns
local var_Items as IItems
local h,h1,h2,h3 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:MarkSearchColumn := false
oDCOCX_Exontrol1:Indent := 11
oDCOCX_Exontrol1:HasLines := exSolidLine
oDCOCX_Exontrol1:Items:AllowCellValueToItemBar := true
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Tasks")
	var_Column := IColumn{var_Columns:Add("Start")}
		var_Column:[Def,exCellValueToItemBarProperty] := 544
		var_Column:Editor:EditType := DateType
		var_Column:LevelKey := 1
	var_Column1 := IColumn{var_Columns:Add("End")}
		var_Column1:[Def,exCellValueToItemBarProperty] := 546
		var_Column1:Editor:EditType := DateType
		var_Column1:LevelKey := 1
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20060920")
	var_Chart:AllowLinkBars := false
	var_Chart:AllowCreateBar := exNoCreateBar
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 224
	var_Bars := var_Chart:Bars
		var_Bar := var_Bars:Add("Underline")
			var_Bar:Color := RGB(0,0,255)
			var_Bar:Shape := exShapeThinDown
		var_Bar1 := var_Bars:Add("Task:Underline")
			var_Bar1:Shortcut := "T"
			var_Bar1:[Def,exBarKeepWorkingCount] := true
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Project")
	var_Items:AddBar(h,"Summary",SToD("20060921"),SToD("20061003"),nil,nil)
	h1 := var_Items:InsertItem(h,nil,"Task 1")
	var_Items:AddBar(h1,"T",SToD("20060921"),SToD("20060924"),nil,nil)
	h2 := var_Items:InsertItem(h,nil,"Task 2")
	var_Items:AddBar(h2,"T",SToD("20060924"),SToD("20060928"),nil,nil)
	h3 := var_Items:InsertItem(h,nil,"Task 3")
	var_Items:AddBar(h3,"T",SToD("20060928"),SToD("20061003"),nil,nil)
	var_Items:DefineSummaryBars(h,"",h1,"")
	var_Items:DefineSummaryBars(h,"",h2,"")
	var_Items:DefineSummaryBars(h,"",h3,"")
	var_Items:[ExpandItem,h] := true
	var_Items:[ItemBold,h] := true
	var_Items:[ItemBar,h,"",exBarMoveStart] := SToD("20060922")
oDCOCX_Exontrol1:EndUpdate()

1780
I have a column of date-type, the question is how can I move the associated bar, instead of resizing it (summary)

local var_Chart as IChart
local var_Column,var_Column1 as IColumn
local var_Columns as IColumns
local var_Items as IItems
local h,h1,h2,h3 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:MarkSearchColumn := false
oDCOCX_Exontrol1:Indent := 11
oDCOCX_Exontrol1:HasLines := exSolidLine
oDCOCX_Exontrol1:Items:AllowCellValueToItemBar := true
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Tasks")
	var_Column := IColumn{var_Columns:Add("Start")}
		var_Column:[Def,exCellValueToItemBarProperty] := 544
		var_Column:Editor:EditType := DateType
		var_Column:LevelKey := 1
	var_Column1 := IColumn{var_Columns:Add("End")}
		var_Column1:[Def,exCellValueToItemBarProperty] := 545
		var_Column1:Editor:EditType := DateType
		var_Column1:LevelKey := 1
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20060920")
	var_Chart:AllowLinkBars := false
	var_Chart:AllowCreateBar := exNoCreateBar
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 224
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Project")
	var_Items:AddBar(h,"Summary",SToD("20060921"),SToD("20061003"),nil,nil)
	h1 := var_Items:InsertItem(h,nil,"Task 1")
	var_Items:AddBar(h1,"Task",SToD("20060921"),SToD("20060924"),nil,nil)
	h2 := var_Items:InsertItem(h,nil,"Task 2")
	var_Items:AddBar(h2,"Task",SToD("20060924"),SToD("20060928"),nil,nil)
	h3 := var_Items:InsertItem(h,nil,"Task 3")
	var_Items:AddBar(h3,"Task",SToD("20060928"),SToD("20061003"),nil,nil)
	var_Items:DefineSummaryBars(h,"",h1,"")
	var_Items:DefineSummaryBars(h,"",h2,"")
	var_Items:DefineSummaryBars(h,"",h3,"")
	var_Items:[ExpandItem,h] := true
	var_Items:[ItemBold,h] := true
	var_Items:[ItemBar,h,"",exBarMoveStart] := SToD("20060922")
oDCOCX_Exontrol1:EndUpdate()

1779
Is it possible to programmatically move all bars of specified key to end at specified date (inclusive)

local var_Chart as IChart
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Debug := true
oDCOCX_Exontrol1:Columns:Add("Tasks")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 48
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddBar(var_Items:AddItem("Task A.1"),"Task",SToD("20010101"),SToD("20010106"),"A",nil)
	var_Items:AddBar(var_Items:AddItem("Task A.2"),"Task",SToD("20010102"),SToD("20010107"),"A",nil)
	var_Items:AddBar(var_Items:AddItem("Task B.1"),"Task",SToD("20010103"),SToD("20010108"),"B",nil)
	var_Items:AddBar(var_Items:AddItem("Task B.2"),"Task",SToD("20010104"),SToD("20010109"),"B",nil)
	var_Items:[ItemBar,0,"<A*>",exBarMoveEndInclusive] := SToD("20010102")
oDCOCX_Exontrol1:EndUpdate()

1778
Is it possible to programmatically move all bars to end at specified date (inclusive)

local var_Chart as IChart
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Debug := true
oDCOCX_Exontrol1:Columns:Add("Tasks")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 48
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddBar(var_Items:AddItem("Task A.1"),"Task",SToD("20010101"),SToD("20010106"),"A",nil)
	var_Items:AddBar(var_Items:AddItem("Task A.2"),"Task",SToD("20010102"),SToD("20010107"),"A",nil)
	var_Items:AddBar(var_Items:AddItem("Task B.1"),"Task",SToD("20010103"),SToD("20010108"),"B",nil)
	var_Items:AddBar(var_Items:AddItem("Task B.2"),"Task",SToD("20010104"),SToD("20010109"),"B",nil)
	var_Items:[ItemBar,0,"<*>",exBarMoveEndInclusive] := SToD("20010102")
oDCOCX_Exontrol1:EndUpdate()

1777
Is it possible to programmatically move all bars of specified key to end at specified date

local var_Chart as IChart
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Debug := true
oDCOCX_Exontrol1:Columns:Add("Tasks")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 48
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddBar(var_Items:AddItem("Task A.1"),"Task",SToD("20010101"),SToD("20010106"),"A",nil)
	var_Items:AddBar(var_Items:AddItem("Task A.2"),"Task",SToD("20010102"),SToD("20010107"),"A",nil)
	var_Items:AddBar(var_Items:AddItem("Task B.1"),"Task",SToD("20010103"),SToD("20010108"),"B",nil)
	var_Items:AddBar(var_Items:AddItem("Task B.2"),"Task",SToD("20010104"),SToD("20010109"),"B",nil)
	var_Items:[ItemBar,0,"<A*>",exBarMoveEnd] := SToD("20010102")
oDCOCX_Exontrol1:EndUpdate()

1776
Is it possible to programmatically move all bars to end at specified date

local var_Chart as IChart
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Debug := true
oDCOCX_Exontrol1:Columns:Add("Tasks")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 48
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddBar(var_Items:AddItem("Task A.1"),"Task",SToD("20010101"),SToD("20010106"),"A",nil)
	var_Items:AddBar(var_Items:AddItem("Task A.2"),"Task",SToD("20010102"),SToD("20010107"),"A",nil)
	var_Items:AddBar(var_Items:AddItem("Task B.1"),"Task",SToD("20010103"),SToD("20010108"),"B",nil)
	var_Items:AddBar(var_Items:AddItem("Task B.2"),"Task",SToD("20010104"),SToD("20010109"),"B",nil)
	var_Items:[ItemBar,0,"<*>",exBarMoveEnd] := SToD("20010102")
oDCOCX_Exontrol1:EndUpdate()

1775
Is it possible to programmatically move all bars of specified key to start at specified date

local var_Chart as IChart
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Debug := true
oDCOCX_Exontrol1:Columns:Add("Tasks")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 48
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddBar(var_Items:AddItem("Task A.1"),"Task",SToD("20010101"),SToD("20010106"),"A",nil)
	var_Items:AddBar(var_Items:AddItem("Task A.2"),"Task",SToD("20010102"),SToD("20010107"),"A",nil)
	var_Items:AddBar(var_Items:AddItem("Task B.1"),"Task",SToD("20010103"),SToD("20010108"),"B",nil)
	var_Items:AddBar(var_Items:AddItem("Task B.2"),"Task",SToD("20010104"),SToD("20010109"),"B",nil)
	var_Items:[ItemBar,0,"<A*>",exBarMoveStart] := SToD("20010102")
oDCOCX_Exontrol1:EndUpdate()

1774
Is it possible to programmatically move all bars to start at specified date

local var_Chart as IChart
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Debug := true
oDCOCX_Exontrol1:Columns:Add("Tasks")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 48
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddBar(var_Items:AddItem("Task A.1"),"Task",SToD("20010101"),SToD("20010106"),"A",nil)
	var_Items:AddBar(var_Items:AddItem("Task A.2"),"Task",SToD("20010102"),SToD("20010107"),"A",nil)
	var_Items:AddBar(var_Items:AddItem("Task B.1"),"Task",SToD("20010103"),SToD("20010108"),"B",nil)
	var_Items:AddBar(var_Items:AddItem("Task B.2"),"Task",SToD("20010104"),SToD("20010109"),"B",nil)
	var_Items:[ItemBar,0,"<*>",exBarMoveStart] := SToD("20010102")
oDCOCX_Exontrol1:EndUpdate()

1773
Is it possible to programmatically move all bars of specified key

local var_Chart as IChart
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Debug := true
oDCOCX_Exontrol1:Columns:Add("Tasks")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 48
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddBar(var_Items:AddItem("Task A.1"),"Task",SToD("20010101"),SToD("20010106"),"A",nil)
	var_Items:AddBar(var_Items:AddItem("Task A.2"),"Task",SToD("20010102"),SToD("20010107"),"A",nil)
	var_Items:AddBar(var_Items:AddItem("Task B.1"),"Task",SToD("20010103"),SToD("20010108"),"B",nil)
	var_Items:AddBar(var_Items:AddItem("Task B.2"),"Task",SToD("20010104"),SToD("20010109"),"B",nil)
	var_Items:[ItemBar,0,"<A*>",exBarMove] := 2
oDCOCX_Exontrol1:EndUpdate()

1772
Is it possible to programmatically move all bars

local var_Chart as IChart
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Debug := true
oDCOCX_Exontrol1:Columns:Add("Tasks")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 48
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddBar(var_Items:AddItem("Task A.1"),"Task",SToD("20010101"),SToD("20010106"),"A",nil)
	var_Items:AddBar(var_Items:AddItem("Task A.2"),"Task",SToD("20010102"),SToD("20010107"),"A",nil)
	var_Items:AddBar(var_Items:AddItem("Task B.1"),"Task",SToD("20010103"),SToD("20010108"),"B",nil)
	var_Items:AddBar(var_Items:AddItem("Task B.2"),"Task",SToD("20010104"),SToD("20010109"),"B",nil)
	var_Items:[ItemBar,0,"<*>",exBarMove] := 2
oDCOCX_Exontrol1:EndUpdate()

1771
How can I programmatically move a bar, so it ends at specified date (inclusive)
local var_Chart as IChart
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:Columns:Add("Tasks")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 48
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Task 1")
	var_Items:AddBar(h,"Task",SToD("20010101"),SToD("20010106"),"A",nil)
	var_Items:[ItemBar,h,"A",exBarMoveEndInclusive] := SToD("20010104")

1770
How can I programmatically move a bar, so it ends at specified date
local var_Chart as IChart
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:Columns:Add("Tasks")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 48
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Task 1")
	var_Items:AddBar(h,"Task",SToD("20010101"),SToD("20010106"),"A",nil)
	var_Items:[ItemBar,h,"A",exBarMoveEnd] := SToD("20010104")

1769
How can I programmatically move a bar, so it starts at specified date
local var_Chart as IChart
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:Columns:Add("Tasks")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 48
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Task 1")
	var_Items:AddBar(h,"Task",SToD("20010101"),SToD("20010106"),"A",nil)
	var_Items:[ItemBar,h,"A",exBarMoveStart] := SToD("20010104")

1768
I can’t figure out how to control the date and time format (in level 0, 1 and 2) when the user click on the OverviewZoom bottom

local var_Chart as IChart
local var_Level,var_Level1 as ILevel

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:HeaderHeight := 22
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20160101")
	var_Chart:[PaneWidth,false] := 0
	var_Chart:LevelCount := 2
	var_Chart:DrawLevelSeparator := exLevelSolidLine
	var_Chart:AllowResizeChart := exAllowResizeChartMiddle | exAllowResizeChartHeader
	var_Chart:MaxUnitWidth := 196
	var_Level := var_Chart:[Level,0]
		var_Level:Alignment := exHOutside | CenterAlignment
		var_Level:DrawTickLines := exLevelSolidLine
	var_Level1 := var_Chart:[Level,1]
		var_Level1:DrawTickLines := exLevelMiddleLine | exLevelDotLine
		var_Level1:DrawTickLinesFrom(0,exLevelSolidLine)
		var_Level1:BackColor := RGB(240,240,240)
	var_Chart:OverviewVisible := exOverviewShowAllVisible
	var_Chart:AllowOverviewZoom := exAlwaysZoom
	var_Chart:UnitWidth := 24
	var_Chart:[Label,exSecond] := ""
	var_Chart:[Label,exMinute] := ""
	var_Chart:[Label,exHour] := ""
	var_Chart:[Label,exWeek] := ""
	var_Chart:[Label,exDay] := "<font ;6><%d%><|><%d%><|><%d%> <fgcolor=A0A0A0><off -4><%d1%><|><%d%> <fgcolor=A0A0A0><off -4><%d2%><|><%d%> <fgcolor=A0A0A0><off -4><%d3%><|><%d%> <fgcolor=A0A0A0><off -4><%dddd%><||><||>4096"
	var_Chart:UnitScale := exDay
	var_Chart:ScrollTo(var_Chart:FirstVisibleDate,1)
oDCOCX_Exontrol1:Columns:Add("Default")
oDCOCX_Exontrol1:EndUpdate()

1767
Can I use GroupBars with OverlaidType method

local var_Chart as IChart
local var_Items as IItems
local h,h1,h2,h3 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Tasks")
oDCOCX_Exontrol1:Debug := true
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:ScrollBySingleLine := true
oDCOCX_Exontrol1:BackColorLevelHeader := oDCOCX_Exontrol1:BackColor
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:LevelCount := 2
	var_Chart:FirstVisibleDate := SToD("20060920")
	var_Chart:[PaneWidth,false] := 96
	var_Chart:Bars:[Item,"Task"]:OverlaidType := exOverlaidBarsStack
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Project")
	var_Items:AddBar(h,"Summary",SToD("20060921"),SToD("20061004"),nil,nil)
	h1 := var_Items:InsertItem(h,nil,"Tasks")
	var_Items:AddBar(h1,"Task",SToD("20060921"),SToD("20060926"),"h1",nil)
	h2 := h1
	var_Items:AddBar(h2,"Task",SToD("20060925"),SToD("20060930"),"h2",nil)
	var_Items:AddLink("L1",h1,"h1",h2,"h2")
	h3 := h1
	var_Items:AddBar(h3,"Task",SToD("20060929"),SToD("20061004"),"h3",nil)
	var_Items:AddLink("L2",h2,"h2",h3,"h3")
	var_Items:DefineSummaryBars(h,"",h1,"h1")
	var_Items:DefineSummaryBars(h,"",h2,"h2")
	var_Items:DefineSummaryBars(h,"",h3,"h3")
	var_Items:[ExpandItem,h] := true
	var_Items:[ItemBold,h] := true
	var_Items:GroupBars(h1,"h1",false,h2,"h2",true,31,"0;5;-1")
	var_Items:GroupBars(h2,"h2",false,h3,"h3",true,31,"0;5;-1")
oDCOCX_Exontrol1:EndUpdate()

1766
How do I change the link's lag so I can schedule bars to start later (with nonworking part)

METHOD OCX_Exontrol1BarResizing(Item,Key) CLASS MainDialog
	// BarResizing event - Occurs when a bar is moving or resizing.
	oDCOCX_Exontrol1:Items:SchedulePDM(Item,Key)
RETURN NIL

local var_Bar as IBar
local var_Chart as IChart
local var_Items as IItems
local h1,h2,h3,h4 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:DefaultItemHeight := 22
oDCOCX_Exontrol1:HeaderHeight := oDCOCX_Exontrol1:DefaultItemHeight
oDCOCX_Exontrol1:BackColorLevelHeader := oDCOCX_Exontrol1:BackColor
oDCOCX_Exontrol1:AntiAliasing := true
oDCOCX_Exontrol1:Columns:Add("Task")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:LinksStyle := exLinkSolid
	var_Chart:LinksColor := RGB(128,128,128)
	var_Chart:LevelCount := 2
	var_Chart:FirstVisibleDate := SToD("20001228")
	var_Chart:[PaneWidth,false] := 48
	var_Bar := var_Chart:Bars:[Item,"Task"]
		var_Bar:[Def,exBarKeepWorkingCount] := true
		var_Bar:[Def,exBarHAlignCaption] := 18
		var_Bar:Color := RGB(0,0,0)
		var_Bar:StartColor := RGB(190,190,190)
		var_Bar:EndColor := var_Bar:StartColor
		var_Bar:Pattern := exPatternBox
var_Items := oDCOCX_Exontrol1:Items
	h1 := var_Items:AddItem("Task 1")
	var_Items:AddBar(h1,"Task",SToD("20010102"),SToD("20010105"),"K1","FS lag=0 (default)")
	h2 := var_Items:AddItem("Task 2")
	var_Items:AddBar(h2,"Task",SToD("20010102"),SToD("20010105"),"K2","FS lag=4")
	var_Items:AddLink("L1",h1,"K1",h2,"K2")
	h3 := var_Items:AddItem("Task 3")
	var_Items:AddBar(h3,"Task",SToD("20010102"),SToD("20010105"),"K3","FS lag=-1")
	var_Items:AddLink("L2",h2,"K2",h3,"K3")
	var_Items:[Link,"L2",exLinkPDMWorkingDelay] := 4
	h4 := var_Items:AddItem("Task 4")
	var_Items:AddBar(h4,"Task",SToD("20010102"),SToD("20010105"),"K4",nil)
	var_Items:AddLink("L3",h3,"K3",h4,"K4")
	var_Items:[Link,"L3",exLinkPDMWorkingDelay] := -1
	var_Items:SchedulePDM(0,"K1")
oDCOCX_Exontrol1:EndUpdate()

1765
How do I change the link's lag so I can schedule bars to start later (without nonworking part)

METHOD OCX_Exontrol1BarResizing(Item,Key) CLASS MainDialog
	// BarResizing event - Occurs when a bar is moving or resizing.
	oDCOCX_Exontrol1:Items:SchedulePDM(Item,Key)
RETURN NIL

local var_Bar as IBar
local var_Chart as IChart
local var_Items as IItems
local h1,h2,h3,h4 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:DefaultItemHeight := 22
oDCOCX_Exontrol1:HeaderHeight := oDCOCX_Exontrol1:DefaultItemHeight
oDCOCX_Exontrol1:BackColorLevelHeader := oDCOCX_Exontrol1:BackColor
oDCOCX_Exontrol1:AntiAliasing := true
oDCOCX_Exontrol1:Columns:Add("Task")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:LinksStyle := exLinkSolid
	var_Chart:LinksColor := RGB(128,128,128)
	var_Chart:LevelCount := 2
	var_Chart:NonworkingDays := 0
	var_Chart:FirstVisibleDate := SToD("20001228")
	var_Chart:[PaneWidth,false] := 48
	var_Bar := var_Chart:Bars:[Item,"Task"]
		var_Bar:[Def,exBarHAlignCaption] := 18
		var_Bar:Color := RGB(0,0,0)
		var_Bar:StartColor := RGB(190,190,190)
		var_Bar:EndColor := var_Bar:StartColor
		var_Bar:Pattern := exPatternBox
var_Items := oDCOCX_Exontrol1:Items
	h1 := var_Items:AddItem("Task 1")
	var_Items:AddBar(h1,"Task",SToD("20010102"),SToD("20010105"),"K1","FS lag=0 (default)")
	h2 := var_Items:AddItem("Task 2")
	var_Items:AddBar(h2,"Task",SToD("20010102"),SToD("20010105"),"K2","FS lag=4")
	var_Items:AddLink("L1",h1,"K1",h2,"K2")
	h3 := var_Items:AddItem("Task 3")
	var_Items:AddBar(h3,"Task",SToD("20010102"),SToD("20010105"),"K3","FS lag=-1")
	var_Items:AddLink("L2",h2,"K2",h3,"K3")
	var_Items:[Link,"L2",exLinkPDMDelay] := 4
	h4 := var_Items:AddItem("Task 4")
	var_Items:AddBar(h4,"Task",SToD("20010102"),SToD("20010105"),"K4",nil)
	var_Items:AddLink("L3",h3,"K3",h4,"K4")
	var_Items:[Link,"L3",exLinkPDMDelay] := -1
	var_Items:SchedulePDM(0,"K1")
oDCOCX_Exontrol1:EndUpdate()

1764
Is it possible to select the entire row/line, when user clicks the first column, and select individually the rest of cells, while user clicks any other column

METHOD OCX_Exontrol1AddGroupItem(Item) CLASS MainDialog
	// AddGroupItem event - Occurs after a new Group Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Summary",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
		var_Items:DefineSummaryBars(Item,"",-3,"")
RETURN NIL

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Task",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
RETURN NIL

METHOD OCX_Exontrol1MouseDown(Button,Shift,X,Y) CLASS MainDialog
	// MouseDown event - Occurs when the user presses a mouse button.
	local i as USUAL
	i := oDCOCX_Exontrol1:[ItemFromPoint,-1,-1,c,hit]
	oDCOCX_Exontrol1:FullRowSelect := oDCOCX_Exontrol1:Columns:[Item,c]:Data
RETURN NIL

local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:HeaderHeight := 22
oDCOCX_Exontrol1:HeaderAppearance := Flat
oDCOCX_Exontrol1:BackColorLock := RGB(240,240,240)
oDCOCX_Exontrol1:BackColorHeader := oDCOCX_Exontrol1:BackColorLock
oDCOCX_Exontrol1:HasLines := exNoLine
oDCOCX_Exontrol1:ColumnAutoResize := false
oDCOCX_Exontrol1:SortBarVisible := false
oDCOCX_Exontrol1:AllowGroupBy := true
oDCOCX_Exontrol1:ReadOnly := exReadOnly
oDCOCX_Exontrol1:ShowFocusRect := false
oDCOCX_Exontrol1:CountLockedColumns := 1
oDCOCX_Exontrol1:AutoDrag := exAutoDragScroll
oDCOCX_Exontrol1:SingleSort := false
oDCOCX_Exontrol1:ColumnsAllowSizing := true
oDCOCX_Exontrol1:DrawGridLines := exAllLines
oDCOCX_Exontrol1:GridLineStyle := exGridLinesSolid
oDCOCX_Exontrol1:GridLineColor := RGB(220,220,220)
oDCOCX_Exontrol1:Chart:FirstVisibleDate := SToD("19940901")
oDCOCX_Exontrol1:Chart:LevelCount := 2
oDCOCX_Exontrol1:Chart:[PaneWidth,false] := 256
oDCOCX_Exontrol1:BackColorSortBar := oDCOCX_Exontrol1:BackColor
oDCOCX_Exontrol1:ColumnAutoResize := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:Columns:[Item,0]:Data := -1
oDCOCX_Exontrol1:Layout := "singlesort=" + CHR(34) + "C5:1" + CHR(34) + ";multiplesort=" + CHR(34) + " C1:2" + CHR(34) + ""
oDCOCX_Exontrol1:EndUpdate()

1763
I've also hit a strange problem with the BeforeExpandItem event - the Cancel parameter is declared as const in Delphi when I believe it should be declared as var or out so I can use it to return OleVariant(True) to cancel the operation, or am I missing something, or how can I disable expanding / collapsing the items
METHOD OCX_Exontrol1BeforeExpandItem(Item,Cancel) CLASS MainDialog
	// BeforeExpandItem event - Fired before an item is about to be expanded (collapsed).
	oDCOCX_Exontrol1:[EventParam,1] := true
RETURN NIL

METHOD OCX_Exontrol1Event(EventID) CLASS MainDialog
	// Event event - Notifies the application once the control fires an event.
	OutputDebugString(String2Psz( AsString(oDCOCX_Exontrol1:[EventParam,-2]) ))
RETURN NIL

local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
oDCOCX_Exontrol1:Columns:Add("Default")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root A")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
	var_Items:[ExpandItem,h] := true
	h := var_Items:AddItem("Root B")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
	var_Items:[ExpandItem,h] := true
oDCOCX_Exontrol1:EndUpdate()

1762
Is there any way I can get rid / hide of the vertical blue lines ( today, selected date )
local var_Chart as IChart

oDCOCX_Exontrol1:BeginUpdate()
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:[PaneWidth,false] := 128
	var_Chart:LevelCount := 2
	var_Chart:MarkSelectDateColor := var_Chart:BackColor
	var_Chart:MarkTodayColor := var_Chart:BackColor
oDCOCX_Exontrol1:EndUpdate()

1761
Is it possible to search for a bar through items only ( not including the locked items )

local var_Chart as IChart
local var_Column as IColumn
local var_Items,var_Items1 as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Debug := true
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:[PaneWidth,false] := 128
	var_Chart:LevelCount := 2
	var_Chart:FirstVisibleDate := SToD("20151231")
oDCOCX_Exontrol1:BackColorAlternate := RGB(250,250,250)
oDCOCX_Exontrol1:ShowLockedItems := true
oDCOCX_Exontrol1:Columns:Add("Column")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Find")}
	var_Column:[Def,exCellValueFormat] := 1
	var_Column:Visible := false
	var_Column:FormatColumn := "int(value) = 0 ? `` : ` <fgcolor=FF0000><b>found here ` "
oDCOCX_Exontrol1:Chart:ColumnsFormatLevel := "1"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[LockedItemCount,exTop] := 3
	h := var_Items:[LockedItem,exTop,0]
	var_Items:[CellValue,h,0] := "locked-top 1"
	var_Items:AddBar(h,"Task",SToD("20160104"),SToD("20160108"),"T1",nil)
	h := var_Items:[LockedItem,exTop,1]
	var_Items:[CellValue,h,0] := "locked-top 2"
	var_Items:AddBar(h,"Task",SToD("20160105"),SToD("20160109"),"T2",nil)
	h := var_Items:[LockedItem,exTop,2]
	var_Items:[SelectItem,h] := false
	var_Items:[ItemDivider,h] := 0
	var_Items:[ItemHeight,h] := 2
	var_Items:AddBar(var_Items:AddItem("un-locked item 1"),"Task",SToD("20160104"),SToD("20160108"),"T3",nil)
	var_Items:AddBar(var_Items:AddItem("un-locked item 2"),"Task",SToD("20160105"),SToD("20160109"),"T4",nil)
	var_Items:[LockedItemCount,exMiddle] := 3
	h := var_Items:[LockedItem,exMiddle,0]
	var_Items:[SelectItem,h] := false
	var_Items:[ItemDivider,h] := 0
	var_Items:[ItemHeight,h] := 2
	h := var_Items:[LockedItem,exMiddle,1]
	var_Items:[CellValue,h,0] := "locked-bottom 1"
	var_Items:AddBar(h,"Task",SToD("20160104"),SToD("20160108"),"T5",nil)
	h := var_Items:[LockedItem,exMiddle,2]
	var_Items:[CellValue,h,0] := "locked-bottom 2"
	var_Items:AddBar(h,"Task",SToD("20160105"),SToD("20160109"),"T6",nil)
var_Items1 := oDCOCX_Exontrol1:Items
	h := var_Items1:[FindBar,"T4",0]
	var_Items1:[ItemBar,h,var_Items1:[FirstItemBar,h],exBarColor] := 255
	var_Items1:[CellValue,h,1] := h
oDCOCX_Exontrol1:EndUpdate()

1760
Is it possible to search for a bar through bottom-locked-items only

local var_Chart as IChart
local var_Column as IColumn
local var_Items,var_Items1 as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Debug := true
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:[PaneWidth,false] := 128
	var_Chart:LevelCount := 2
	var_Chart:FirstVisibleDate := SToD("20151231")
oDCOCX_Exontrol1:BackColorAlternate := RGB(250,250,250)
oDCOCX_Exontrol1:ShowLockedItems := true
oDCOCX_Exontrol1:Columns:Add("Column")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Find")}
	var_Column:[Def,exCellValueFormat] := 1
	var_Column:Visible := false
	var_Column:FormatColumn := "int(value) = 0 ? `` : ` <fgcolor=FF0000><b>found here ` "
oDCOCX_Exontrol1:Chart:ColumnsFormatLevel := "1"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[LockedItemCount,exTop] := 3
	h := var_Items:[LockedItem,exTop,0]
	var_Items:[CellValue,h,0] := "locked-top 1"
	var_Items:AddBar(h,"Task",SToD("20160104"),SToD("20160108"),"T1",nil)
	h := var_Items:[LockedItem,exTop,1]
	var_Items:[CellValue,h,0] := "locked-top 2"
	var_Items:AddBar(h,"Task",SToD("20160105"),SToD("20160109"),"T2",nil)
	h := var_Items:[LockedItem,exTop,2]
	var_Items:[SelectItem,h] := false
	var_Items:[ItemDivider,h] := 0
	var_Items:[ItemHeight,h] := 2
	var_Items:AddBar(var_Items:AddItem("un-locked item 1"),"Task",SToD("20160104"),SToD("20160108"),"T3",nil)
	var_Items:AddBar(var_Items:AddItem("un-locked item 2"),"Task",SToD("20160105"),SToD("20160109"),"T4",nil)
	var_Items:[LockedItemCount,exMiddle] := 3
	h := var_Items:[LockedItem,exMiddle,0]
	var_Items:[SelectItem,h] := false
	var_Items:[ItemDivider,h] := 0
	var_Items:[ItemHeight,h] := 2
	h := var_Items:[LockedItem,exMiddle,1]
	var_Items:[CellValue,h,0] := "locked-bottom 1"
	var_Items:AddBar(h,"Task",SToD("20160104"),SToD("20160108"),"T5",nil)
	h := var_Items:[LockedItem,exMiddle,2]
	var_Items:[CellValue,h,0] := "locked-bottom 2"
	var_Items:AddBar(h,"Task",SToD("20160105"),SToD("20160109"),"T6",nil)
var_Items1 := oDCOCX_Exontrol1:Items
	h := var_Items1:[FindBar,"T6",-4]
	var_Items1:[ItemBar,h,var_Items1:[FirstItemBar,h],exBarColor] := 255
	var_Items1:[CellValue,h,1] := h
oDCOCX_Exontrol1:EndUpdate()

1759
Is it possible to search for a bar through top-locked-items only

local var_Chart as IChart
local var_Column as IColumn
local var_Items,var_Items1 as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Debug := true
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:[PaneWidth,false] := 128
	var_Chart:LevelCount := 2
	var_Chart:FirstVisibleDate := SToD("20151231")
oDCOCX_Exontrol1:BackColorAlternate := RGB(250,250,250)
oDCOCX_Exontrol1:ShowLockedItems := true
oDCOCX_Exontrol1:Columns:Add("Column")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Find")}
	var_Column:[Def,exCellValueFormat] := 1
	var_Column:Visible := false
	var_Column:FormatColumn := "int(value) = 0 ? `` : ` <fgcolor=FF0000><b>found here ` "
oDCOCX_Exontrol1:Chart:ColumnsFormatLevel := "1"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[LockedItemCount,exTop] := 3
	h := var_Items:[LockedItem,exTop,0]
	var_Items:[CellValue,h,0] := "locked-top 1"
	var_Items:AddBar(h,"Task",SToD("20160104"),SToD("20160108"),"T1",nil)
	h := var_Items:[LockedItem,exTop,1]
	var_Items:[CellValue,h,0] := "locked-top 2"
	var_Items:AddBar(h,"Task",SToD("20160105"),SToD("20160109"),"T2",nil)
	h := var_Items:[LockedItem,exTop,2]
	var_Items:[SelectItem,h] := false
	var_Items:[ItemDivider,h] := 0
	var_Items:[ItemHeight,h] := 2
	var_Items:AddBar(var_Items:AddItem("un-locked item 1"),"Task",SToD("20160104"),SToD("20160108"),"T3",nil)
	var_Items:AddBar(var_Items:AddItem("un-locked item 2"),"Task",SToD("20160105"),SToD("20160109"),"T4",nil)
	var_Items:[LockedItemCount,exMiddle] := 3
	h := var_Items:[LockedItem,exMiddle,0]
	var_Items:[SelectItem,h] := false
	var_Items:[ItemDivider,h] := 0
	var_Items:[ItemHeight,h] := 2
	h := var_Items:[LockedItem,exMiddle,1]
	var_Items:[CellValue,h,0] := "locked-bottom 1"
	var_Items:AddBar(h,"Task",SToD("20160104"),SToD("20160108"),"T5",nil)
	h := var_Items:[LockedItem,exMiddle,2]
	var_Items:[CellValue,h,0] := "locked-bottom 2"
	var_Items:AddBar(h,"Task",SToD("20160105"),SToD("20160109"),"T6",nil)
var_Items1 := oDCOCX_Exontrol1:Items
	h := var_Items1:[FindBar,"T1",-3]
	var_Items1:[ItemBar,h,var_Items1:[FirstItemBar,h],exBarColor] := 255
	var_Items1:[CellValue,h,1] := h
oDCOCX_Exontrol1:EndUpdate()

1758
Is it possible to search for a bar through all locked-items only

local var_Chart as IChart
local var_Column as IColumn
local var_Items,var_Items1 as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Debug := true
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:[PaneWidth,false] := 128
	var_Chart:LevelCount := 2
	var_Chart:FirstVisibleDate := SToD("20151231")
oDCOCX_Exontrol1:BackColorAlternate := RGB(250,250,250)
oDCOCX_Exontrol1:ShowLockedItems := true
oDCOCX_Exontrol1:Columns:Add("Column")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Find")}
	var_Column:[Def,exCellValueFormat] := 1
	var_Column:Visible := false
	var_Column:FormatColumn := "int(value) = 0 ? `` : ` <fgcolor=FF0000><b>found here ` "
oDCOCX_Exontrol1:Chart:ColumnsFormatLevel := "1"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[LockedItemCount,exTop] := 3
	h := var_Items:[LockedItem,exTop,0]
	var_Items:[CellValue,h,0] := "locked-top 1"
	var_Items:AddBar(h,"Task",SToD("20160104"),SToD("20160108"),"T1",nil)
	h := var_Items:[LockedItem,exTop,1]
	var_Items:[CellValue,h,0] := "locked-top 2"
	var_Items:AddBar(h,"Task",SToD("20160105"),SToD("20160109"),"T2",nil)
	h := var_Items:[LockedItem,exTop,2]
	var_Items:[SelectItem,h] := false
	var_Items:[ItemDivider,h] := 0
	var_Items:[ItemHeight,h] := 2
	var_Items:AddBar(var_Items:AddItem("un-locked item 1"),"Task",SToD("20160104"),SToD("20160108"),"T3",nil)
	var_Items:AddBar(var_Items:AddItem("un-locked item 2"),"Task",SToD("20160105"),SToD("20160109"),"T4",nil)
	var_Items:[LockedItemCount,exMiddle] := 3
	h := var_Items:[LockedItem,exMiddle,0]
	var_Items:[SelectItem,h] := false
	var_Items:[ItemDivider,h] := 0
	var_Items:[ItemHeight,h] := 2
	h := var_Items:[LockedItem,exMiddle,1]
	var_Items:[CellValue,h,0] := "locked-bottom 1"
	var_Items:AddBar(h,"Task",SToD("20160104"),SToD("20160108"),"T5",nil)
	h := var_Items:[LockedItem,exMiddle,2]
	var_Items:[CellValue,h,0] := "locked-bottom 2"
	var_Items:AddBar(h,"Task",SToD("20160105"),SToD("20160109"),"T6",nil)
var_Items1 := oDCOCX_Exontrol1:Items
	h := var_Items1:[FindBar,"T2",-2]
	var_Items1:[ItemBar,h,var_Items1:[FirstItemBar,h],exBarColor] := 255
	var_Items1:[CellValue,h,1] := h
oDCOCX_Exontrol1:EndUpdate()

1757
Is it possible to search for a bar through all items ( including locked items )

local var_Chart as IChart
local var_Column as IColumn
local var_Items,var_Items1 as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Debug := true
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:[PaneWidth,false] := 128
	var_Chart:LevelCount := 2
	var_Chart:FirstVisibleDate := SToD("20151231")
oDCOCX_Exontrol1:BackColorAlternate := RGB(250,250,250)
oDCOCX_Exontrol1:ShowLockedItems := true
oDCOCX_Exontrol1:Columns:Add("Column")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Find")}
	var_Column:[Def,exCellValueFormat] := 1
	var_Column:Visible := false
	var_Column:FormatColumn := "int(value) = 0 ? `` : ` <fgcolor=FF0000><b>found here ` "
oDCOCX_Exontrol1:Chart:ColumnsFormatLevel := "1"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[LockedItemCount,exTop] := 3
	h := var_Items:[LockedItem,exTop,0]
	var_Items:[CellValue,h,0] := "locked-top 1"
	var_Items:AddBar(h,"Task",SToD("20160104"),SToD("20160108"),"T1",nil)
	h := var_Items:[LockedItem,exTop,1]
	var_Items:[CellValue,h,0] := "locked-top 2"
	var_Items:AddBar(h,"Task",SToD("20160105"),SToD("20160109"),"T2",nil)
	h := var_Items:[LockedItem,exTop,2]
	var_Items:[SelectItem,h] := false
	var_Items:[ItemDivider,h] := 0
	var_Items:[ItemHeight,h] := 2
	var_Items:AddBar(var_Items:AddItem("un-locked item 1"),"Task",SToD("20160104"),SToD("20160108"),"T3",nil)
	var_Items:AddBar(var_Items:AddItem("un-locked item 2"),"Task",SToD("20160105"),SToD("20160109"),"T4",nil)
	var_Items:[LockedItemCount,exMiddle] := 3
	h := var_Items:[LockedItem,exMiddle,0]
	var_Items:[SelectItem,h] := false
	var_Items:[ItemDivider,h] := 0
	var_Items:[ItemHeight,h] := 2
	h := var_Items:[LockedItem,exMiddle,1]
	var_Items:[CellValue,h,0] := "locked-bottom 1"
	var_Items:AddBar(h,"Task",SToD("20160104"),SToD("20160108"),"T5",nil)
	h := var_Items:[LockedItem,exMiddle,2]
	var_Items:[CellValue,h,0] := "locked-bottom 2"
	var_Items:AddBar(h,"Task",SToD("20160105"),SToD("20160109"),"T6",nil)
var_Items1 := oDCOCX_Exontrol1:Items
	h := var_Items1:[FindBar,"T5",-1]
	var_Items1:[ItemBar,h,var_Items1:[FirstItemBar,h],exBarColor] := 255
	var_Items1:[CellValue,h,1] := h
oDCOCX_Exontrol1:EndUpdate()

1756
How do I clip/hide/align the bar's caption/text based on the bar's size/width/length

local var_Bar as IBar
local var_Chart as IChart
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Clip")
oDCOCX_Exontrol1:ScrollBySingleLine := true
oDCOCX_Exontrol1:DrawGridLines := exRowLines
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:AllowResizeChart := exAllowResizeChartMiddle | exAllowResizeChartHeader
	var_Chart:DrawGridLines := exRowLines
	var_Chart:FirstVisibleDate := SToD("20001223")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 216
	var_Bar := var_Chart:Bars:[Item,"Task"]
		var_Bar:Pattern := exPatternBox
		var_Bar:Color := RGB(164,164,164)
		var_Bar:StartColor := RGB(240,240,240)
		var_Bar:EndColor := var_Bar:StartColor
		var_Bar:OverlaidType := exOverlaidBarsIncludeCaption | exOverlaidBarsStackAutoArrange | exOverlaidBarsStack
		var_Bar:Height := 15
	var_Chart:MinUnitWidth := var_Chart:UnitWidth
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("no clip, (0-2)")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010104"),"K1","no clip, right(<b>2</b>)")
	var_Items:[ItemBar,h,"K1",exBarHAlignCaption] := 2
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010104"),"K2","no clip, center(<b>1</b>)")
	var_Items:[ItemBar,h,"K2",exBarHAlignCaption] := 1
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010104"),"K3","no clip, left(<b>0</b>)")
	var_Items:[ItemBar,h,"K3",exBarHAlignCaption] := 0
	h := var_Items:AddItem("clip, inside (3-5)")
	var_Items:AddBar(h,"Task",SToD("20001228"),SToD("20010108"),"K1","clip, inside, right(<b>5</b>)")
	var_Items:[ItemBar,h,"K1",exBarHAlignCaption] := 5
	var_Items:AddBar(h,"Task",SToD("20001228"),SToD("20010108"),"K2","clip, inside, center(<b>4</b>)")
	var_Items:[ItemBar,h,"K2",exBarHAlignCaption] := 4
	var_Items:AddBar(h,"Task",SToD("20001228"),SToD("20010108"),"K3","clip, inside, left(<b>3</b>)")
	var_Items:[ItemBar,h,"K3",exBarHAlignCaption] := 3
	h := var_Items:AddItem("hide on min width, clip if not fit, inside (6-8)")
	var_Items:AddBar(h,"Task",SToD("20001226"),SToD("20010110"),"K1","hide on min width, clip if not fit, inside, right(<b>8</b>)")
	var_Items:[ItemBar,h,"K1",exBarHAlignCaption] := 8
	var_Items:AddBar(h,"Task",SToD("20001226"),SToD("20010110"),"K2","hide on min width, clip if not fit, inside, center(<b>7</b>)")
	var_Items:[ItemBar,h,"K2",exBarHAlignCaption] := 7
	var_Items:AddBar(h,"Task",SToD("20001226"),SToD("20010110"),"K3","hide on min width, clip if not fit, inside, left(<b>6</b>)")
	var_Items:[ItemBar,h,"K3",exBarHAlignCaption] := 6
	h := var_Items:AddItem("hide if not fit, no clip, inside (9-11)")
	var_Items:AddBar(h,"Task",SToD("20001228"),SToD("20010108"),"K1","hide if not fit, no clip, inside, right(<b>11</b>)")
	var_Items:[ItemBar,h,"K1",exBarHAlignCaption] := 11
	var_Items:AddBar(h,"Task",SToD("20001228"),SToD("20010108"),"K2","hide if not fit, no clip, center(<b>10</b>)")
	var_Items:[ItemBar,h,"K2",exBarHAlignCaption] := 10
	var_Items:AddBar(h,"Task",SToD("20001228"),SToD("20010108"),"K3","hide if not fit, no clip, inside, left(<b>9</b>)")
	var_Items:[ItemBar,h,"K3",exBarHAlignCaption] := 9
	h := var_Items:AddItem("no clip, inside, outside (12-14)")
	var_Items:AddBar(h,"Task",SToD("20001228"),SToD("20010108"),"K1","no clip, inside, outside, right(<b>14</b>)")
	var_Items:[ItemBar,h,"K1",exBarHAlignCaption] := 14
	var_Items:AddBar(h,"Task",SToD("20001228"),SToD("20010108"),"K2","no clip, inside, outside, center(<b>13</b>)")
	var_Items:[ItemBar,h,"K2",exBarHAlignCaption] := 13
	var_Items:AddBar(h,"Task",SToD("20001228"),SToD("20010108"),"K3","no clip, inside, outside, left(<b>12</b>)")
	var_Items:[ItemBar,h,"K3",exBarHAlignCaption] := 12
	h := var_Items:AddItem("no clip, outside (16-18)")
	var_Items:AddBar(h,"Task",SToD("20001230"),SToD("20010106"),"K1","no clip, outside, right(<b>18</b>)")
	var_Items:[ItemBar,h,"K1",exBarHAlignCaption] := 18
	var_Items:AddBar(h,"Task",SToD("20001230"),SToD("20010106"),"K2","no clip, outside, center(<b>17</b>)")
	var_Items:[ItemBar,h,"K2",exBarHAlignCaption] := 17
	var_Items:AddBar(h,"Task",SToD("20001230"),SToD("20010106"),"K3","no clip, outside, left(<b>16</b>)")
	var_Items:[ItemBar,h,"K3",exBarHAlignCaption] := 16
oDCOCX_Exontrol1:EndUpdate()

1755
Is there a way to prevent the automatic horizontal scrolling of the chart when moving or resizing a bar (method 2)
METHOD OCX_Exontrol1DateChange() CLASS MainDialog
	// DateChange event - Occurs when the first visible date is changed.
	oDCOCX_Exontrol1:Chart:FirstVisibleDate := SToD("20010102")
RETURN NIL

local var_Chart as IChart
local var_Column,var_Column1 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Tasks")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Start")}
	var_Column:[Def,exCellValueToItemBarProperty] := 1
	var_Column:Visible := false
	var_Column:Alignment := LeftAlignment
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("End")}
	var_Column1:[Def,exCellValueToItemBarProperty] := 2
	var_Column1:Visible := false
	var_Column1:Alignment := RightAlignment
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010102")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 48
	var_Chart:ColumnsFormatLevel := "1[bg=12500670]:52,|,2[bg=12500670]:52"
	var_Chart:ColumnsTransparent := 50
	var_Chart:ScrollBar := false
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AllowCellValueToItemBar := true
	var_Items:AddBar(var_Items:AddItem("Task 1"),"Task",SToD("20010103"),SToD("20010107"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("Task 2"),"Task",SToD("20010104"),SToD("20010108"),nil,nil)
oDCOCX_Exontrol1:EndUpdate()

1754
Is there a way to prevent the automatic horizontal scrolling of the chart when moving or resizing a bar, including limiting the bars
METHOD OCX_Exontrol1BarResizing(Item,Key) CLASS MainDialog
	// BarResizing event - Occurs when a bar is moving or resizing.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:[ItemBar,Item,Key,exBarMinStart] := SToD("20010101")
		var_Items:[ItemBar,Item,Key,exBarMaxEnd] := SToD("20010201")
RETURN NIL

local var_Chart as IChart
local var_Column,var_Column1 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Tasks")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Start")}
	var_Column:[Def,exCellValueToItemBarProperty] := 1
	var_Column:Visible := false
	var_Column:Alignment := LeftAlignment
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("End")}
	var_Column1:[Def,exCellValueToItemBarProperty] := 2
	var_Column1:Visible := false
	var_Column1:Alignment := RightAlignment
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010102")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 48
	var_Chart:ColumnsFormatLevel := "1[bg=12500670]:52,|,2[bg=12500670]:52"
	var_Chart:ColumnsTransparent := 50
	var_Chart:[ScrollRange,exStartDate] := SToD("20010101")
	var_Chart:[ScrollRange,exEndDate] := SToD("20010131")
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AllowCellValueToItemBar := true
	var_Items:AddBar(var_Items:AddItem("Task 1"),"Task",SToD("20010103"),SToD("20010107"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("Task 2"),"Task",SToD("20010104"),SToD("20010108"),nil,nil)
oDCOCX_Exontrol1:EndUpdate()

1753
Is there a way to prevent the automatic horizontal scrolling of the chart when moving or resizing a bar (method 1)
local var_Chart as IChart
local var_Column,var_Column1 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Tasks")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Start")}
	var_Column:[Def,exCellValueToItemBarProperty] := 1
	var_Column:Visible := false
	var_Column:Alignment := LeftAlignment
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("End")}
	var_Column1:[Def,exCellValueToItemBarProperty] := 2
	var_Column1:Visible := false
	var_Column1:Alignment := RightAlignment
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010102")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 48
	var_Chart:ColumnsFormatLevel := "1[bg=12500670]:52,|,2[bg=12500670]:52"
	var_Chart:ColumnsTransparent := 50
	var_Chart:[ScrollRange,exStartDate] := SToD("20010101")
	var_Chart:[ScrollRange,exEndDate] := SToD("20010131")
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AllowCellValueToItemBar := true
	var_Items:AddBar(var_Items:AddItem("Task 1"),"Task",SToD("20010103"),SToD("20010107"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("Task 2"),"Task",SToD("20010104"),SToD("20010108"),nil,nil)
oDCOCX_Exontrol1:EndUpdate()

1752
Is it possible to have "Preview Window" as a "Modal Window or 'always-on-top window'"
local var_Print as IExPrint
local var_Items as IItems
local h1,h2 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Task")
oDCOCX_Exontrol1:Chart:FirstVisibleDate := SToD("20010101")
var_Items := oDCOCX_Exontrol1:Items
	h1 := var_Items:AddItem("Task 1")
	var_Items:AddBar(h1,"Task",SToD("20010102"),SToD("20010104"),"K1",nil)
	h2 := var_Items:AddItem("Task 2")
	var_Items:AddBar(h2,"Task",SToD("20010105"),SToD("20010107"),"K2",nil)
	var_Items:AddLink("L1",h1,"K1",h2,"K2")
	var_Items:[Link,"L1",exLinkStartPos] := 0
oDCOCX_Exontrol1:EndUpdate()
// Generate Source for 'ExPrint 1.0 Control Library(ExPrint.dll)' server from Tools\Automation Server...
var_Print := IExPrint{"Exontrol.Print"}
	OutputDebugString(String2Psz( var_Print:Version ))
	var_Print:Foreground := -1
	var_Print:PrintExt := oDCOCX_Exontrol1
	var_Print:Preview()

1751
The week number is not correct (wrong). What can I do

local var_Chart as IChart

var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstWeekDay := var_Chart:LocFirstWeekDay
	var_Chart:MonthNames := var_Chart:LocMonthNames
	var_Chart:WeekDays := var_Chart:LocWeekDays
	var_Chart:AMPM := var_Chart:LocAMPM
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 0
	var_Chart:UnitScale := exWeek
	var_Chart:UnitWidth := 32
	var_Chart:FirstVisibleDate := SToD("20160101")
	var_Chart:AdjustLevelsToBase := true
	var_Chart:WeekNumberAs := exISO8601WeekNumber
	var_Chart:ShowNonworkingDates := false
	var_Chart:ScrollTo(var_Chart:FirstVisibleDate,1)

1750
When the user zooms with the mouse, the chart automatically switches the unit scale - ideally I'd like to replicate this so I can switch the unitscale at the same "zoom levels" that the mouse zooming does - is this possible
METHOD OCX_Exontrol1ChartEndChanging(Operation) CLASS MainDialog
	// ChartEndChanging event - Occurs after the chart has been changed.
	local var_Chart as IChart
	var_Chart := oDCOCX_Exontrol1:Chart
		OutputDebugString(String2Psz( "FirstVisibleDate" ))
		OutputDebugString(String2Psz( AsString(var_Chart:FirstVisibleDate) ))
		OutputDebugString(String2Psz( "UnitScale" ))
		OutputDebugString(String2Psz( AsString(var_Chart:UnitScale) ))
		OutputDebugString(String2Psz( "UnitWidth" ))
		OutputDebugString(String2Psz( AsString(var_Chart:UnitWidth) ))
RETURN NIL

local var_Chart as IChart

oDCOCX_Exontrol1:BeginUpdate()
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:LevelCount := 3
	var_Chart:AllowResizeChart := exAllowChangeUnitScale | exAllowResizeChartMiddle | exAllowResizeChartHeader
	var_Chart:[PaneWidth,false] := 0
	var_Chart:MarkTodayColor := var_Chart:BackColor
oDCOCX_Exontrol1:EndUpdate()

1749
The first week number is not correctly assigned. What can I do

local var_Chart as IChart

var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:[PaneWidth,false] := 0
	var_Chart:FirstVisibleDate := SToD("20160101")
	var_Chart:LevelCount := 2
	var_Chart:FirstWeekDay := exMonday
	var_Chart:UnitScale := exWeek
	var_Chart:ScrollTo(var_Chart:FirstVisibleDate,1)
	var_Chart:DrawGridLines := exAllLines
	var_Chart:AdjustLevelsToBase := true
	var_Chart:[Level,0]:Label := "<c><%mmmm%>"

1748
How can I display the +/- expand - collapse buttons, a bit larger

local var_Appearance as IAppearance
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
var_Appearance := oDCOCX_Exontrol1:VisualAppearance
	var_Appearance:Add(3,"c:\exontrol\images\normal.ebn")
	var_Appearance:Add(4,"c:\exontrol\images\pushed.ebn")
	var_Appearance:Add(1,"CP:3 -4 -4 4 4")
	var_Appearance:Add(2,"CP:4 -4 -4 4 4")
oDCOCX_Exontrol1:LinesAtRoot := exGroupLinesAtRoot
oDCOCX_Exontrol1:HasButtons := exCustom
oDCOCX_Exontrol1:[HasButtonsCustom,false] := 16777216
oDCOCX_Exontrol1:[HasButtonsCustom,true] := 33554432
oDCOCX_Exontrol1:Columns:Add("Column")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root 1")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
	var_Items:[ExpandItem,h] := true
	h := var_Items:AddItem("Root 2")
	var_Items:InsertItem(h,nil,"Child")
oDCOCX_Exontrol1:EndUpdate()

1747
Is there any option to control where I can drop the items when using the AutoDrag property
METHOD OCX_Exontrol1AllowAutoDrag(Item,NewParent,InsertA,InsertB,Cancel) CLASS MainDialog
	// AllowAutoDrag event - Occurs when the user drags the item between InsertA and InsertB as child of NewParent.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		OutputDebugString(String2Psz( "NewParent" ))
		OutputDebugString(String2Psz( var_Items:[CellCaption,NewParent,0] ))
		OutputDebugString(String2Psz( "After" ))
		OutputDebugString(String2Psz( var_Items:[CellCaption,InsertA,0] ))
		OutputDebugString(String2Psz( "Before" ))
		OutputDebugString(String2Psz( var_Items:[CellCaption,InsertB,0] ))
	Cancel := true
RETURN NIL

local var_Chart as IChart
local var_Items as IItems
local h,h1,h2,h3 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:AutoDrag := exAutoDragPositionAny
oDCOCX_Exontrol1:LinesAtRoot := exNoLinesAtRoot
oDCOCX_Exontrol1:HasLines := exThinLine
oDCOCX_Exontrol1:ShowFocusRect := false
oDCOCX_Exontrol1:Columns:Add("Task")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:ShowNonworkingDates := false
	var_Chart:FirstVisibleDate := SToD("20001229")
	var_Chart:[PaneWidth,false] := 96
	var_Chart:LevelCount := 2
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Group 1")
	var_Items:[ItemDivider,h] := 0
	var_Items:[ItemBold,h] := true
	h1 := var_Items:InsertItem(h,nil,"Task 1")
	var_Items:AddBar(h1,"Task",SToD("20010102"),SToD("20010104"),"K1",nil)
	h2 := var_Items:InsertItem(h,nil,"Task 2")
	var_Items:AddBar(h2,"Task",SToD("20010105"),SToD("20010107"),"K2",nil)
	var_Items:AddLink("L1",h1,"K1",h2,"K2")
	var_Items:[Link,"L1",exLinkText] := "L1"
	h3 := var_Items:InsertItem(h,nil,"Task 3")
	var_Items:AddBar(h3,"Task",SToD("20010108"),SToD("20010110"),"K3",nil)
	var_Items:AddLink("L2",h2,"K2",h3,"K3")
	var_Items:[Link,"L2",exLinkText] := "L2"
	var_Items:[ExpandItem,h] := true
	h := var_Items:AddItem("Group 2")
	var_Items:[ItemBold,h] := true
	var_Items:[ItemDivider,h] := 0
oDCOCX_Exontrol1:EndUpdate()

1746
The column (chart section ) overlaps the bars, when using the ColumnsFormatLevel property. How can I prevent that

local var_Chart as IChart
local var_Column,var_Column1 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Tasks")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Start")}
	var_Column:[Def,exCellValueToItemBarProperty] := 1
	var_Column:Visible := false
	var_Column:Alignment := LeftAlignment
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("End")}
	var_Column1:[Def,exCellValueToItemBarProperty] := 2
	var_Column1:Visible := false
	var_Column1:Alignment := RightAlignment
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010102")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 48
	var_Chart:ColumnsFormatLevel := "1[bg=12500670]:52,|,2[bg=12500670]:52"
	var_Chart:ColumnsTransparent := 50
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AllowCellValueToItemBar := true
	var_Items:AddBar(var_Items:AddItem("Task 1"),"Task",SToD("20010103"),SToD("20010107"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("Task 2"),"Task",SToD("20010104"),SToD("20010108"),nil,nil)
oDCOCX_Exontrol1:EndUpdate()

1745
How do I show the column ( chart section ) with a different background color, when using the ColumnsFormatLevel property (method 2)

local var_Chart as IChart
local var_Column,var_Column1 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Tasks")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Start")}
	var_Column:[Def,exCellValueToItemBarProperty] := 1
	var_Column:Visible := false
	var_Column:Alignment := LeftAlignment
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("End")}
	var_Column1:[Def,exCellValueToItemBarProperty] := 2
	var_Column1:Visible := false
	var_Column1:Alignment := RightAlignment
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010102")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 48
	var_Chart:ColumnsFormatLevel := "1[bg=12500670]:52,|,2[bg=12500670]:52"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AllowCellValueToItemBar := true
	var_Items:AddBar(var_Items:AddItem("Task 1"),"Task",SToD("20010103"),SToD("20010107"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("Task 2"),"Task",SToD("20010104"),SToD("20010108"),nil,nil)
oDCOCX_Exontrol1:EndUpdate()

1744
How do I show the column ( chart section ) with a different background color, when using the ColumnsFormatLevel property (method 1)

local var_Chart as IChart
local var_Column,var_Column1 as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Tasks")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Start")}
	var_Column:[Def,exCellValueToItemBarProperty] := 1
	var_Column:Visible := false
	var_Column:Alignment := LeftAlignment
	var_Column:[Def,exCellBackColor] := 12500670
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("End")}
	var_Column1:[Def,exCellValueToItemBarProperty] := 2
	var_Column1:Visible := false
	var_Column1:Alignment := RightAlignment
	var_Column1:[Def,exCellBackColor] := 12500670
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20001231")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 48
	var_Chart:ColumnsFormatLevel := "1:52,|,2:52"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AllowCellValueToItemBar := true
	var_Items:AddBar(var_Items:AddItem("Task 1"),"Task",SToD("20010103"),SToD("20010107"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("Task 2"),"Task",SToD("20010104"),SToD("20010108"),nil,nil)
oDCOCX_Exontrol1:EndUpdate()

1743
How can I display the control's content on an single A3 paper size, when using PDF format

local var_Bar as IBar
local var_Chart as IChart
local var_Items as IItems
local var_Note,var_Note1 as INote
local var_Notes as INotes
local h,var_CopyTo as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Task")
oDCOCX_Exontrol1:AntiAliasing := true
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20001224")
	var_Chart:[PaneWidth,false] := 96
	var_Chart:LevelCount := 2
	var_Chart:UnitScale := exDay
	var_Bar := var_Chart:Bars:[Item,"Task"]
		var_Bar:Pattern := exPatternSolid
		var_Bar:Color := RGB(0,0,0)
		var_Bar:Height := 16
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Task 1")
	var_Items:AddBar(h,"Task",SToD("20001225"),SToD("20010105"),"1","<fgcolor=FFFFFF>Center")
	var_Items:[ItemBar,h,"1",exBarExtraCaption] := "left"
	var_Items:[ItemBar,h,"1",exBarExtraCaptionHAlign] := 16
	h := var_Items:AddItem("Task 2")
	var_Items:AddBar(h,"Task",SToD("20010105"),SToD("20010116"),"1","<fgcolor=FFFFFF>Center")
	h := var_Items:AddItem("Task 3")
	var_Items:AddBar(h,"Task",SToD("20010116"),SToD("20010126"),"2","Center")
	var_Items:[ItemBar,h,"2",exBarExtraCaption] := "right"
	var_Items:[ItemBar,h,"2",exBarExtraCaptionHAlign] := 18
var_Notes := oDCOCX_Exontrol1:Chart:Notes
	var_Note := var_Notes:Add("1S",oDCOCX_Exontrol1:Items:[ItemByIndex,1],"1","<%m3%>-<%d%>")
		var_Note:[PartShadow,exNoteEnd] := false
		var_Note:[PartHOffset,exNoteEnd] := -16
		var_Note:[PartVOffset,exNoteEnd] := 4
	var_Note1 := var_Notes:Add("1F",oDCOCX_Exontrol1:Items:[ItemByIndex,1],"1","<%m3%>-<%d%>")
		var_Note1:RelativePosition := 1
		var_Note1:[PartShadow,exNoteEnd] := false
		var_Note1:[PartHOffset,exNoteEnd] := 16
		var_Note1:[PartVOffset,exNoteEnd] := -4
var_CopyTo := oDCOCX_Exontrol1:[CopyTo,"C:\Temp\Preview.pdf|11.69 in x 16.53 in||single"]
OutputDebugString(String2Psz( "Look for C:\Temp\Preview.pd file." ))
oDCOCX_Exontrol1:EndUpdate()

1742
How can I display the control's content on an A3 paper size, when using PDF format

local var_Bar as IBar
local var_Chart as IChart
local var_Items as IItems
local var_Note,var_Note1 as INote
local var_Notes as INotes
local h,var_CopyTo as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Task")
oDCOCX_Exontrol1:AntiAliasing := true
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20001224")
	var_Chart:[PaneWidth,false] := 96
	var_Chart:LevelCount := 2
	var_Chart:UnitScale := exDay
	var_Bar := var_Chart:Bars:[Item,"Task"]
		var_Bar:Pattern := exPatternSolid
		var_Bar:Color := RGB(0,0,0)
		var_Bar:Height := 16
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Task 1")
	var_Items:AddBar(h,"Task",SToD("20001225"),SToD("20010105"),"1","<fgcolor=FFFFFF>Center")
	var_Items:[ItemBar,h,"1",exBarExtraCaption] := "left"
	var_Items:[ItemBar,h,"1",exBarExtraCaptionHAlign] := 16
	h := var_Items:AddItem("Task 2")
	var_Items:AddBar(h,"Task",SToD("20010105"),SToD("20010116"),"1","<fgcolor=FFFFFF>Center")
	h := var_Items:AddItem("Task 3")
	var_Items:AddBar(h,"Task",SToD("20010116"),SToD("20010126"),"2","Center")
	var_Items:[ItemBar,h,"2",exBarExtraCaption] := "right"
	var_Items:[ItemBar,h,"2",exBarExtraCaptionHAlign] := 18
var_Notes := oDCOCX_Exontrol1:Chart:Notes
	var_Note := var_Notes:Add("1S",oDCOCX_Exontrol1:Items:[ItemByIndex,1],"1","<%m3%>-<%d%>")
		var_Note:[PartShadow,exNoteEnd] := false
		var_Note:[PartHOffset,exNoteEnd] := -16
		var_Note:[PartVOffset,exNoteEnd] := 4
	var_Note1 := var_Notes:Add("1F",oDCOCX_Exontrol1:Items:[ItemByIndex,1],"1","<%m3%>-<%d%>")
		var_Note1:RelativePosition := 1
		var_Note1:[PartShadow,exNoteEnd] := false
		var_Note1:[PartHOffset,exNoteEnd] := 16
		var_Note1:[PartVOffset,exNoteEnd] := -4
var_CopyTo := oDCOCX_Exontrol1:[CopyTo,"C:\Temp\Preview.pdf|11.69 in x 16.53 in"]
OutputDebugString(String2Psz( "Look for C:\Temp\Preview.pd file." ))
oDCOCX_Exontrol1:EndUpdate()

1741
How can I specify the grouping strategy, ie numbers from 1 to 5 are given the value (1-5) and grouping is done on this new value

METHOD OCX_Exontrol1AddGroupItem(Item) CLASS MainDialog
	// AddGroupItem event - Occurs after a new Group Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:[ItemBold,Item] := true
		var_Items:AddBar(Item,"Summary",var_Items:[CellValue,Item,1],var_Items:[CellValue,Item,2],nil,nil)
		var_Items:DefineSummaryBars(Item,"",-3,"")
RETURN NIL

local var_Chart as IChart
local var_Column,var_Column1,var_Column2 as IColumn
local var_Columns as IColumns
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:AllowGroupBy := true
oDCOCX_Exontrol1:SortBarVisible := true
oDCOCX_Exontrol1:MarkSearchColumn := false
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Tasks")
	var_Column := IColumn{var_Columns:Add("Start")}
		var_Column:[Def,exCellValueToItemBarProperty] := 1
		var_Column:AllowGroupBy := false
	var_Column1 := IColumn{var_Columns:Add("End")}
		var_Column1:[Def,exCellValueToItemBarProperty] := 2
		var_Column1:AllowGroupBy := false
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20060920")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 256
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AllowCellValueToItemBar := true
	var_Items:AddBar(var_Items:AddItem("1"),"Task",SToD("20060921"),SToD("20060927"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("1"),"Task",SToD("20060922"),SToD("20060928"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("2"),"Task",SToD("20060922"),SToD("20060928"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("2"),"Task",SToD("20060923"),SToD("20060929"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("3"),"Task",SToD("20060925"),SToD("20060929"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("3"),"Task",SToD("20060926"),SToD("20060930"),nil,nil)
var_Column2 := IColumn{oDCOCX_Exontrol1:Columns:Add("Tasks - Group")}
	var_Column2:Visible := false
	var_Column2:FormatColumn := "%0 in (1,2) ? `1 - 2` : `3 -`"
	var_Column2:SortOrder := SortAscending
oDCOCX_Exontrol1:EndUpdate()

1740
How can I filter the chart and its content, not the items section

METHOD OCX_Exontrol1RClick() CLASS MainDialog
	// RClick event - Fired when right mouse button is clicked
	oDCOCX_Exontrol1:Columns:[Item,"Start"]:ShowFilter("-1,-1,128,128")
RETURN NIL

local var_Chart as IChart
local var_Column,var_Column1 as IColumn
local var_Columns as IColumns
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:SortBarVisible := true
oDCOCX_Exontrol1:MarkSearchColumn := false
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Tasks")
	var_Column := IColumn{var_Columns:Add("Start")}
		var_Column:[Def,exCellValueToItemBarProperty] := 1
		var_Column:DisplayFilterDate := true
		var_Column:DisplayFilterPattern := false
		var_Column:FilterList := exShowExclude | exShowCheckBox
		var_Column:Visible := false
	var_Column1 := IColumn{var_Columns:Add("End")}
		var_Column1:[Def,exCellValueToItemBarProperty] := 2
		var_Column1:DisplayFilterDate := true
		var_Column1:DisplayFilterPattern := false
		var_Column1:Visible := false
		var_Column1:FilterList := exShowExclude | exShowCheckBox
		var_Column1:Visible := false
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20060920")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 128
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AllowCellValueToItemBar := true
	var_Items:AddBar(var_Items:AddItem("Task 1"),"Task",SToD("20060921"),SToD("20060927"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("Task 2"),"Task",SToD("20060922"),SToD("20060928"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("Task 3"),"Task",SToD("20060922"),SToD("20060928"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("Task 4"),"Task",SToD("20060923"),SToD("20060929"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("Task 5"),"Task",SToD("20060925"),SToD("20060929"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("Task 6"),"Task",SToD("20060926"),SToD("20060930"),nil,nil)
oDCOCX_Exontrol1:EndUpdate()

1739
How do I enable the Group-By feature

METHOD OCX_Exontrol1AddGroupItem(Item) CLASS MainDialog
	// AddGroupItem event - Occurs after a new Group Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:[ItemBackColor,Item] := RGB(240,240,240)
		oDCOCX_Exontrol1:Chart:[ItemBackColor,Item] := RGB(240,240,240)
		var_Items:[ItemDividerLine,Item] := EmptyLine
		var_Items:AddBar(Item,"Summary",var_Items:[CellValue,Item,1],var_Items:[CellValue,Item,2],nil,nil)
		var_Items:DefineSummaryBars(Item,"",-3,"")
RETURN NIL

local var_Chart as IChart
local var_Column,var_Column1 as IColumn
local var_Columns as IColumns
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:AllowGroupBy := true
oDCOCX_Exontrol1:SortBarVisible := true
oDCOCX_Exontrol1:MarkSearchColumn := false
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Tasks")
	var_Column := IColumn{var_Columns:Add("Start")}
		var_Column:[Def,exCellValueToItemBarProperty] := 1
		var_Column:AllowGroupBy := false
	var_Column1 := IColumn{var_Columns:Add("End")}
		var_Column1:[Def,exCellValueToItemBarProperty] := 2
		var_Column1:AllowGroupBy := false
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20060920")
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 256
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AllowCellValueToItemBar := true
	var_Items:AddBar(var_Items:AddItem("Task 1"),"Task",SToD("20060921"),SToD("20060927"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("Task 1"),"Task",SToD("20060922"),SToD("20060928"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("Task 2"),"Task",SToD("20060922"),SToD("20060928"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("Task 2"),"Task",SToD("20060923"),SToD("20060929"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("Task 3"),"Task",SToD("20060925"),SToD("20060929"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("Task 3"),"Task",SToD("20060926"),SToD("20060930"),nil,nil)
oDCOCX_Exontrol1:Columns:[Item,0]:SortOrder := SortAscending
oDCOCX_Exontrol1:EndUpdate()

1738
Is there any method to know number/length/count/duration of working days in a bar ( excluding non-working days)

METHOD OCX_Exontrol1SelectionChanged() CLASS MainDialog
	// SelectionChanged event - Fired after a new item has been selected.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		OutputDebugString(String2Psz( var_Items:[CellCaption,var_Items:FocusItem,0] ))
		OutputDebugString(String2Psz( AsString(var_Items:[ItemBar,var_Items:FocusItem,"",exBarWorkingCount]) ))
RETURN NIL

local var_Bar as IBar
local var_Chart as IChart
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:SelBackColor := RGB(142,190,255)
oDCOCX_Exontrol1:SelForeColor := RGB(0,0,0)
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:[PaneWidth,false] := 96
	var_Chart:FirstVisibleDate := SToD("20020101")
	var_Bar := var_Chart:Bars:Add("Task:Split")
		var_Bar:Shortcut := "Task"
		var_Bar:[Def,exBarCaption] := "<%=%258%><font ;6><off 3>w/units"
		var_Bar:[Def,exBarHAlignCaption] := 18
	var_Chart:SelBackColor := oDCOCX_Exontrol1:SelBackColor
oDCOCX_Exontrol1:Columns:Add("Task")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Task A")
	var_Items:AddBar(h,"Task",SToD("20020102"),SToD("20020109"),nil,nil)
	h := var_Items:AddItem("Task B")
	var_Items:AddBar(h,"Task",SToD("20020103"),SToD("20020108"),nil,nil)
	var_Items:[SelectItem,h] := true
	h := var_Items:AddItem("Task C")
	var_Items:AddBar(h,"Task",SToD("20020104"),SToD("20020105"),nil,nil)
oDCOCX_Exontrol1:EndUpdate()

1737
How do i verify weather specified unit is Nonworking Working Unit

METHOD OCX_Exontrol1MouseMove(Button,Shift,X,Y) CLASS MainDialog
	// MouseMove event - Occurs when the user moves the mouse.
	local d,h as USUAL
	h := oDCOCX_Exontrol1:[ItemFromPoint,-1,-1,c,hit]
	d := oDCOCX_Exontrol1:Chart:[DateFromPoint,-1,-1]
	OutputDebugString(String2Psz( AsString(d) ))
	OutputDebugString(String2Psz( AsString(oDCOCX_Exontrol1:Chart:[IsNonworkingDate,d,h]) ))
RETURN NIL

local var_Chart as IChart
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("NonWorking")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstWeekDay := exMonday
	var_Chart:FirstVisibleDate := SToD("20080124")
	var_Chart:[PaneWidth,false] := 64
	var_Chart:LevelCount := 2
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Default")
	h := var_Items:AddItem("January")
	var_Items:[ItemNonworkingUnits,h,false] := "month(value) = 1"
	h := var_Items:AddItem("February, Saturday, Sunday")
	var_Items:[ItemNonworkingUnits,h,false] := "month(value) = 2 or (weekday(value) = 0 or weekday(value) = 6)"
	h := var_Items:AddItem("Sunday")
	var_Items:[ItemNonworkingUnits,h,false] := "weekday(value) = 0"
oDCOCX_Exontrol1:EndUpdate()

1736
How can I specify the bar's caption to be caption from a column/cell

METHOD OCX_Exontrol1Change(Item,ColIndex,NewValue) CLASS MainDialog
	// Change event - Occurs when the user changes the cell's content.
	oDCOCX_Exontrol1:Refresh()
RETURN NIL

local var_Bar as IBar
local var_Chart as IChart
local var_Editor as IEditor
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:[PaneWidth,false] := 64
	var_Bar := var_Chart:Bars:[Item,"Task"]
		var_Bar:[Def,exBarCaption] := "<fgcolor=808080><%=%C0%>"
		var_Bar:[Def,exBarHAlignCaption] := 18
var_Editor := IColumn{oDCOCX_Exontrol1:Columns:Add("Task")}:Editor
	var_Editor:EditType := DropDownListType
	var_Editor:AddItem(1,"Aka",nil)
	var_Editor:AddItem(2,"Baka",nil)
	var_Editor:AddItem(3,"Taka",nil)
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddBar(var_Items:AddItem(1),"Task",SToD("20010102"),SToD("20010105"),nil,nil)
	var_Items:AddBar(var_Items:AddItem(2),"Task",SToD("20010103"),SToD("20010106"),nil,nil)
	var_Items:AddBar(var_Items:AddItem(3),"Task",SToD("20010104"),SToD("20010107"),nil,nil)
oDCOCX_Exontrol1:EndUpdate()

1735
The histogram values displayed on the chart are using 2 decimal places. Can this be formated to just 0 decimal place, so 86.79% becomes 87%

local var_Bar as IBar
local var_Chart as IChart
local var_Column as IColumn
local var_Items as IItems
local h1 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Tasks")
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Effort")}
	var_Column:[Def,exCellValueToItemBarProperty] := 21
	var_Column:Editor:EditType := SpinType
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:LevelCount := 2
	var_Chart:NonworkingDays := 0
	var_Chart:[PaneWidth,false] := 96
	var_Chart:FirstVisibleDate := SToD("20050620")
	var_Chart:HistogramVisible := true
	var_Chart:HistogramHeight := 128
	var_Chart:HistogramView := exHistogramAllItems
	var_Bar := var_Chart:Bars:[Item,"Task"]
		var_Bar:HistogramPattern := var_Bar:Pattern
		var_Bar:HistogramType := exHistOverload
		var_Bar:HistogramCriticalValue := 3
		var_Bar:ShowHistogramValues := "value>3?255:1"
		var_Bar:HistogramItems := -11
		var_Bar:HistogramGridLinesColor := RGB(192,192,192)
		var_Bar:HistogramRulerLinesColor := RGB(0,0,1)
		var_Bar:FormatHistogramValues := "(value format `0`) + ` units`"
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AllowCellValueToItemBar := true
	h1 := var_Items:AddItem("Task 1")
	var_Items:AddBar(h1,"Task",SToD("20050621"),SToD("20050623"),nil,nil)
	var_Items:[CellValue,h1,1] := 6.79
	h1 := var_Items:AddItem("Task 2")
	var_Items:AddBar(h1,"Task",SToD("20050624"),SToD("20050626"),nil,nil)
	var_Items:[CellValue,h1,1] := 3.19
	h1 := var_Items:AddItem("Task 3")
	var_Items:AddBar(h1,"Task",SToD("20050627"),SToD("20050629"),nil,nil)
	var_Items:[CellValue,h1,1] := 2
	h1 := var_Items:AddItem("Task 4")
	var_Items:AddBar(h1,"Task",SToD("20050630"),SToD("20050702"),nil,nil)
	var_Items:[CellValue,h1,1] := 1
oDCOCX_Exontrol1:EndUpdate()

1734
How can I create a relative time-scale

local var_Bar as IBar
local var_Chart as IChart
local var_Items as IItems
local var_Level,var_Level1 as ILevel
local h,hChild as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:DefaultItemHeight := 24
oDCOCX_Exontrol1:HeaderHeight := oDCOCX_Exontrol1:DefaultItemHeight
oDCOCX_Exontrol1:GridLineStyle := exGridLinesSolid
oDCOCX_Exontrol1:DrawGridLines := exAllLines
oDCOCX_Exontrol1:LinesAtRoot := exNoLinesAtRoot
oDCOCX_Exontrol1:BackColorLevelHeader := oDCOCX_Exontrol1:BackColor
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:DrawGridLines := exAllLines
	var_Chart:GridLineStyle := exGridLinesSolid
	var_Chart:[PaneWidth,false] := 128
	var_Chart:LevelCount := 2
	var_Chart:FirstVisibleDate := 0
	var_Chart:NonworkingDays := 0
	var_Chart:UnitWidth := 36
	var_Level := var_Chart:[Level,0]
		var_Level:Unit := exDay
		var_Level:Count := 6
		var_Level:Alignment := CenterAlignment
		var_Level:Label := "<%i%>"
		var_Level:FormatLabel := "'<b>' + ( (value / 6)  array ('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec') ) + '-16'"
	var_Level1 := var_Chart:[Level,1]
		var_Level1:Label := "<%i%>"
		var_Level1:FormatLabel := "1 + value mod 6 + ` `"
		var_Level1:Alignment := RightAlignment
	var_Chart:AdjustLevelsToBase := true
	var_Chart:[ScrollRange,exStartDate] := 0
	var_Chart:[ScrollRange,exEndDate] := 95
	var_Bar := var_Chart:Bars:[Item,"Task"]
		var_Bar:Height := 15
		var_Bar:Color := RGB(252,213,180)
		var_Bar:Pattern := exPatternSolid
		var_Bar:[Def,exBarCaption] := "date blocking"
oDCOCX_Exontrol1:Columns:Add("Company")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("ABC Company")
	var_Items:[ItemBackColor,h] := RGB(240,240,240)
	oDCOCX_Exontrol1:Chart:[ItemBackColor,h] := RGB(240,240,240)
	hChild := var_Items:InsertItem(h,nil,"line 1")
	var_Items:AddBar(hChild,"Task",0,3,nil,nil)
	hChild := var_Items:InsertItem(h,nil,"line 2")
	var_Items:AddBar(hChild,"Task",3,5,"A",nil)
	var_Items:AddBar(hChild,"Task",7,10,"B",nil)
	hChild := var_Items:InsertItem(h,nil,"line 3")
	var_Items:AddBar(hChild,"Task",5,8,"A",nil)
	var_Items:AddBar(hChild,"Task",9,12,"B",nil)
	var_Items:[ExpandItem,h] := true
oDCOCX_Exontrol1:EndUpdate()

1733
Extending the bar's visual appearance with additional objects, EBNs, using the exBarBackgroundExt and exBarBackgroundExtInflate

local var_Appearance as IAppearance
local var_Bar as IBar
local var_Chart as IChart
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:DefaultItemHeight := 32
var_Appearance := oDCOCX_Exontrol1:VisualAppearance
	var_Appearance:Add(1,"gBFLBCJwBAEHhEJAADhABcMIQAAYAQGKIYBkAKBQAGaAoDDUMQyQwAAyDAK8EwsACEIrAAJoaAAPoJRDGMTvfIgARIf6MIRAeCYFDAJQtDCMICwSKsXBaGwBJYGGaYEDGHQATxKM7wGBcEyLDSgXZDQRAAoqTI/SICEIlAZJRjoOo5DJGGQmChkQhNVzGQzQSJFDTNAaEAwidDJCoOGgkBw7NwXFaNZznBK7LpvK5HNrie55XzAcj3dbmAYJQzBJLxKSIDwCd6NXrCOJ5HhWDzjQjJMozLC8YiPG6fZRbeT4ToGNdXYhJWiyLiFeYtVzSMj1fD9Ir/EakbLtey4Lq2A53RzdHThSQpCwPA4BgIA=")
	var_Appearance:Add(2,"gBFLBCJwBAEHhEJAADhABcMIQAAYAQGKIYBkAKBQAGaAoDDUMQyQwAAyDAK8EwsACEIrAAJoaAAPoJRDGMTvfIgARIf6MIRAeCYFDAJQtDCMICwSKsXBaGwBJYGGaYEDGHQATxKM7wGBcEyLDSgXZDQRAAoqTI/SICEIlAZJRjoOo5DJGGQmChkQhNVzGQzQSJFDTNAaEAwidDJCoOGgkBw7NrXHZ9YwTOC5IDke67cr2J53XZAd4QTb2Cz7QC8QAvDA7awafM1MSuHIcOw/AqTYDkTq4XjODYhTDEc4zPLcFx/I6haBoWCSLi+T5VVrRMo1TKtRxnNaubZqO5aRrGe5NW6EXThSQpCr+f4BgIA=")
	var_Appearance:Add(3,"gBFLBCJwBAEHhEJAADhABcMIQAAYAQGKIYBkAKBQAGaAoDDUMQyQwAAyDAK8EwsACEIrAAJoaAAPoJRDGMTvfIgARIf6MIRAeCYFDAJQtDCMICwSKsXBaGwBJYGGaYEDGHQATxKM7wGBcEyLDSgXZDQRAAoqTI/SICEIlAZJRjoOo5DJGGQmChkQhNVzGQzQSJFDTNAaEAwidDJCoOGgkBw7NwXFaNZznBK7LpvK5HNrie55XxfV6YBa8B4JPaEZLwLB7dwaf6IQLiWLYHiAAYZRKTcxlDI8AwvFaaZjnWA5ZaOMZBU7RNRyHR9IyTDaWaTqeqbHIuJ4FUzaNY2fZrOz2F6FAA6cKSFIWFYVAMBA")
	var_Appearance:Add(4,"gBFLBCJwBAEHhEJAADhABb8IQAAYAQGKIYBkAKBQAGaAoDDUMQyQwAAyDAK8EwsACEIrAAJoaAAPoJRDGMTvfIgARIf6MIRAeCYFDAJQtDCMICwSKsXBaGwBJYGGaYEDGHQATxKM7wGBcEyLDSgXZDQRAAoqTI/SICEIlAZJRjoOo5DJGGQmChkQhNVzGQzQSJFDTNAaEAwidDJCoOGgkBw7NwXFaNZznBK7LpvK5HNrie55XxfV6YBa8B4JPaEZLwLB7dwaf6IQLiWLYHiAAYBIbJI5yeb5Hx3HqfZjbeSxVoML43SzHcByGRcTwzC6pYjrGoZJpWZ4ZQrbNR3DZ8VzzNTrQxIUhYVhUAkB")
	var_Appearance:RenderType := -16777216
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:[PaneWidth,false] := 164
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:NonworkingDaysColor := RGB(240,240,240)
	var_Chart:NonworkingDaysPattern := exPatternBDiagonal
	var_Bar := var_Chart:Bars:[Item,"Task"]
		var_Bar:Height := 17
		var_Bar:Color := RGB(255,255,255)
		var_Bar:Pattern := exPatternSolid
		var_Bar:[Def,exBarFrameColor] := 1
oDCOCX_Exontrol1:Columns:Add("Column")
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddBar(var_Items:AddItem("Task"),"Task",SToD("20010102"),SToD("20010106"),"",nil)
	h := var_Items:AddItem("Task+Rhombus(red)")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010107"),"",nil)
	var_Items:[ItemBar,h,"",exBarBackgroundExt] := "none[(100%-11,50%-6,11,11),back=0x10000FF]"
	var_Items:[ItemBar,h,"",exBarBackgroundExtInflate] := ",,5"
	h := var_Items:AddItem("Rhombus(red)+Task")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010108"),"",nil)
	var_Items:[ItemBar,h,"",exBarBackgroundExt] := "none[(0,50%-6,11,11),back=0x10000FF]"
	var_Items:[ItemBar,h,"",exBarBackgroundExtInflate] := "-5"
	h := var_Items:AddItem("Task(yellow)+Rhombus(blue)")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010109"),"",nil)
	var_Items:[ItemBar,h,"",exBarBackgroundExt] := "none[(100%-11,50%-6,11,11),back=0x1FF0000]"
	var_Items:[ItemBar,h,"",exBarBackgroundExtInflate] := ",,5"
	var_Items:[ItemBar,h,"",exBarColor] := 65535
	h := var_Items:AddItem("Rhombus(blue)+Task(yellow)")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010108"),"",nil)
	var_Items:[ItemBar,h,"",exBarBackgroundExt] := "none[(0,50%-6,11,11),back=0x1FF0000]"
	var_Items:[ItemBar,h,"",exBarBackgroundExtInflate] := "-5"
	var_Items:[ItemBar,h,"",exBarColor] := 65535
	h := var_Items:AddItem("TriangleUp(white)+Task")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010107"),"",nil)
	var_Items:[ItemBar,h,"",exBarBackgroundExt] := "none[(0,50%-6,11,11),back=0x2FFFFFF]"
	var_Items:[ItemBar,h,"",exBarBackgroundExtInflate] := "-5"
	h := var_Items:AddItem("TriangleUp(blue)+Task(magenta)+TriangleDown(red)")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010106"),"",nil)
	var_Items:[ItemBar,h,"",exBarBackgroundExt] := "none[(0,50%-6,11,11),back=0x02FF0000],none[(100%-11,50%-6,11,11),back=0x030000FF]"
	var_Items:[ItemBar,h,"",exBarBackgroundExtInflate] := "-5,0,5,0"
	var_Items:[ItemBar,h,"",exBarColor] := 16744703
	h := var_Items:AddItem("Rhombus+Task+TriangleDown")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010107"),"",nil)
	var_Items:[ItemBar,h,"",exBarBackgroundExt] := "none[(0,50%-6,11,11),back=0x01FF0000],none[(100%-11,50%-6,11,11),back=0x030000FF]"
	var_Items:[ItemBar,h,"",exBarBackgroundExtInflate] := "-5, 0,5,0"
	var_Items:[ItemBar,h,"",exBarColor] := 16744448
	h := var_Items:AddItem("Rhombus+Task+TriangleDown")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010108"),"",nil)
	var_Items:[ItemBar,h,"",exBarBackgroundExt] := "none[(50%-6,0,11,11),back=0x01FF0000],none[(50%-6,100%-11,11,11),back=0x010000FF]"
	var_Items:[ItemBar,h,"",exBarBackgroundExtInflate] := "0,-5,0,5"
	h := var_Items:AddItem("Task+Star")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010109"),"",nil)
	var_Items:[ItemBar,h,"",exBarBackgroundExt] := "none[(100%-11,0,11,11),back=0x4FFFFFF]"
	var_Items:[ItemBar,h,"",exBarBackgroundExtInflate] := 5
	h := var_Items:AddItem("Star+Task")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010108"),"",nil)
	var_Items:[ItemBar,h,"",exBarBackgroundExt] := "none[(0,100%-11,11,11),back=0x04FFFFFF]"
	var_Items:[ItemBar,h,"",exBarBackgroundExtInflate] := 5
	h := var_Items:AddItem("Task+Star")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010107"),"",nil)
	var_Items:[ItemBar,h,"",exBarBackgroundExt] := "none[(100%-11,0,11,11),back=0x4FFFFFF]"
	var_Items:[ItemBar,h,"",exBarBackgroundExtInflate] := "0,-6,14"
oDCOCX_Exontrol1:EndUpdate()

1732
I am using the ItemBar(exBarFrameColor) to display an additional EBN on the current bar. The problem is that I still need a black frame around the bar. How can I achieve that

local var_Appearance as IAppearance
local var_Chart as IChart
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
var_Appearance := oDCOCX_Exontrol1:VisualAppearance
	var_Appearance:Add(1,"gBFLBCJwBAEHhEJAADhABXMIQAAYAQGKIYBkAKBQAGaAoDDWDoMAANAyjPBMKgBBCLAACaKQAD6CYQRhFT7yGAERr/C6EQLhGBRQCULQxDCBMIjLJoWhsASVRhnCBBRhwAI7ShPUBgXBNCQzICTJJkSJZBiECIJFAaJhnIapZDKGKQWCjAgiNpqGQ2QiKFC2HAcEAxCxGJBoKKZGq2bpJQLbdxUXRVZzpNi7Louay5CrOCZvXxaeAXDa+Az5ODDMRwLBcKhzCKDYzfdrZFaWFT3Qi8aCvG6sbw/HZ0OrEEIwCEBA")
	var_Appearance:Add(2,"CP:1 0 0 5 0")
	var_Appearance:Add(3,"gBFLBCJwBAEHhEJAADhABUEIQAAYAQGKIYBkAKBQAGaAoDDWDoMAANAyjPBMKgBBCLIxhEYobgmGIaRiBMIxAKIZhzEgYRoiAYhXDiHwxARHUgRfIEOwHDiBZomWKZEiaKIqRrLMryFLMZx3CqcAApGaqHiOCYlSbTcoyfJYZBzD6mKJpWipWheW48U7PVRDJSkNysASZIyrGKqJouX4WR7BcZgNR4YBgEoWRouSBLWrgNIVR6/eBABZFPzbNK3ZzdOIIJgEgIA=")
	var_Appearance:RenderType := -16777216
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:[PaneWidth,false] := 164
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:Bars:[Item,"Task"]:Color := 0x3ff0000
	var_Chart:Bars:Copy("Task","NewTask"):Height := 15
oDCOCX_Exontrol1:Columns:Add("Column")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Task")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010106"),nil,nil)
	var_Items:AddBar(h,"NewTask",SToD("20010108"),SToD("20010112"),"new",nil)
	h := var_Items:AddItem("Task+Rhombus")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010106"),nil,nil)
	var_Items:[ItemBar,h,"",exBarFrameColor] := 33554432
	var_Items:AddBar(h,"NewTask",SToD("20010108"),SToD("20010112"),"new",nil)
	var_Items:[ItemBar,h,"new",exBarFrameColor] := 33554432
	h := var_Items:AddItem("Task/Color+Rhombus")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010106"),nil,nil)
	var_Items:[ItemBar,h,"",exBarFrameColor] := 33554687
	var_Items:[ItemBar,h,"",exBarColor] := 65280
	var_Items:AddBar(h,"NewTask",SToD("20010108"),SToD("20010112"),"new",nil)
	var_Items:[ItemBar,h,"new",exBarFrameColor] := 33554687
	var_Items:[ItemBar,h,"new",exBarColor] := 65280
	h := var_Items:AddItem("Task/Color+Rhombus/Color")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010106"),nil,nil)
	var_Items:[ItemBar,h,"",exBarFrameColor] := 33619712
	var_Items:[ItemBar,h,"",exBarColor] := 16711935
	var_Items:AddBar(h,"NewTask",SToD("20010108"),SToD("20010112"),"new",nil)
	var_Items:[ItemBar,h,"new",exBarFrameColor] := 33619712
	var_Items:[ItemBar,h,"new",exBarColor] := 16711935
oDCOCX_Exontrol1:EndUpdate()

1731
I am using EBN objects to show my bars, but when apply a color to the EBN looks darker. Is it possible to get the same color brightness

local var_Appearance as IAppearance
local var_Chart as IChart
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
var_Appearance := oDCOCX_Exontrol1:VisualAppearance
	var_Appearance:Add(1,"gBFLBCJwBAEHhEJAADhABWkIQAAYAQGKIYBkAKBQAGaAoDDWDoMAANAyjPBMKgBBCLAACaKQAD6CYQRhFT7yGAERr/C6EZBGABYJDUMAlCyNQBQSKIYxnAgYY4ACZ5IjqAwLQjQEYzZI0SxJCqQZBBCCSQKkYx0HScRijDILBQwIQmaqjEZoJCiQZfQLCAYRMhkQx9DKTLRtKhYDqubpHUZbdwWRaVYTlM6RLbhGy7YqefJtXLfN4WZgWCz9QLDI4wS78JruaqOW5hVz4BasfTrOzLcTzG4HLhCCYBgI")
	var_Appearance:Add(2,"CP:1 -6 0 0 0")
	var_Appearance:RenderType := -16777216
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:[PaneWidth,false] := 164
	var_Chart:FirstVisibleDate := SToD("20010101")
oDCOCX_Exontrol1:Columns:Add("Column")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Task")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010106"),nil,nil)
	h := var_Items:AddItem("Task+Rhombus")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010106"),nil,nil)
	var_Items:[ItemBar,h,"",exBarFrameColor] := 33554432
	h := var_Items:AddItem("Task/Color+Rhombus")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010106"),nil,nil)
	var_Items:[ItemBar,h,"",exBarFrameColor] := 33554687
	var_Items:[ItemBar,h,"",exBarColor] := 65280
	h := var_Items:AddItem("Task/Color+Rhombus/Color")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010106"),nil,nil)
	var_Items:[ItemBar,h,"",exBarFrameColor] := 33619712
	var_Items:[ItemBar,h,"",exBarColor] := 16711935
oDCOCX_Exontrol1:EndUpdate()

1730
The ItemBar(exBarColor) changes the color for margins, and there is no exBarStartColor/exBarEndColor. However in my case I would then like do dynamically change the bar color to a different color without changing the start shape color

local var_Appearance as IAppearance
local var_Chart as IChart
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
var_Appearance := oDCOCX_Exontrol1:VisualAppearance
	var_Appearance:Add(1,"gBFLBCJwBAEHhEJAADhABWkIQAAYAQGKIYBkAKBQAGaAoDDWDoMAANAyjPBMKgBBCLAACaKQAD6CYQRhFT7yGAERr/C6EZBGABYJDUMAlCyNQBQSKIYxnAgYY4ACZ5IjqAwLQjQEYzZI0SxJCqQZBBCCSQKkYx0HScRijDILBQwIQmaqjEZoJCiQZfQLCAYRMhkQx9DKTLRtKhYDqubpHUZbdwWRaVYTlM6RLbhGy7YqefJtXLfN4WZgWCz9QLDI4wS78JruaqOW5hVz4BasfTrOzLcTzG4HLhCCYBgI")
	var_Appearance:Add(2,"CP:1 -6 0 0 0")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:[PaneWidth,false] := 164
	var_Chart:FirstVisibleDate := SToD("20010101")
oDCOCX_Exontrol1:Columns:Add("Column")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Task")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010106"),nil,nil)
	h := var_Items:AddItem("Task+Rhombus")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010106"),nil,nil)
	var_Items:[ItemBar,h,"",exBarFrameColor] := 33554432
	h := var_Items:AddItem("Task/Color+Rhombus")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010106"),nil,nil)
	var_Items:[ItemBar,h,"",exBarFrameColor] := 33554432
	var_Items:[ItemBar,h,"",exBarColor] := 65280
	h := var_Items:AddItem("Task/Color+Rhombus/Color")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010106"),nil,nil)
	var_Items:[ItemBar,h,"",exBarFrameColor] := 33619712
	var_Items:[ItemBar,h,"",exBarColor] := 16711935
oDCOCX_Exontrol1:EndUpdate()

1729
The ItemBar(exBarColor) changes the color for margins, and there is no exBarStartColor/exBarEndColor. However in my case I would then like do dynamically change the bar color to a different color without changing the end shape color

local var_Appearance as IAppearance
local var_Chart as IChart
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
var_Appearance := oDCOCX_Exontrol1:VisualAppearance
	var_Appearance:Add(1,"gBFLBCJwBAEHhEJAADhABXMIQAAYAQGKIYBkAKBQAGaAoDDWDoMAANAyjPBMKgBBCLAACaKQAD6CYQRhFT7yGAERr/C6EQLhGBRQCULQxDCBMIjLJoWhsASVRhnCBBRhwAI7ShPUBgXBNCQzICTJJkSJZBiECIJFAaJhnIapZDKGKQWCjAgiNpqGQ2QiKFC2HAcEAxCxGJBoKKZGq2bpJQLbdxUXRVZzpNi7Louay5CrOCZvXxaeAXDa+Az5ODDMRwLBcKhzCKDYzfdrZFaWFT3Qi8aCvG6sbw/HZ0OrEEIwCEBA")
	var_Appearance:Add(2,"CP:1 0 0 6 0")
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:[PaneWidth,false] := 164
	var_Chart:FirstVisibleDate := SToD("20010101")
oDCOCX_Exontrol1:Columns:Add("Column")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Task")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010106"),nil,nil)
	h := var_Items:AddItem("Task+Rhombus")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010106"),nil,nil)
	var_Items:[ItemBar,h,"",exBarFrameColor] := 33554432
	h := var_Items:AddItem("Task/Color+Rhombus")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010106"),nil,nil)
	var_Items:[ItemBar,h,"",exBarFrameColor] := 33554432
	var_Items:[ItemBar,h,"",exBarColor] := 65280
	h := var_Items:AddItem("Task/Color+Rhombus/Color")
	var_Items:AddBar(h,"Task",SToD("20010102"),SToD("20010106"),nil,nil)
	var_Items:[ItemBar,h,"",exBarFrameColor] := 33619712
	var_Items:[ItemBar,h,"",exBarColor] := 16711935
oDCOCX_Exontrol1:EndUpdate()

1728
Is it possible to resize a column with the mouse without changing the width of the next column


oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ColumnAutoResize := false
IColumn{oDCOCX_Exontrol1:Columns:Add("Column 1")}:Width := 256
IColumn{oDCOCX_Exontrol1:Columns:Add("Column 2")}:Width := 512
oDCOCX_Exontrol1:DrawGridLines := exAllLines
oDCOCX_Exontrol1:EndUpdate()

1727
How can I align captions of items with checkbox, with items with no checkbox

local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Columns:Add("Default")
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[CellImages,var_Items:AddItem(0),0] := "1"
	var_Items:[CellHasCheckBox,var_Items:AddItem(1),0] := true
	var_Items:[CellImages,var_Items:AddItem(2),0] := "1"
oDCOCX_Exontrol1:EndUpdate()

1726
How can I show each group header ( not-subroup ), with a different background color, while alternate background colors for inside items

METHOD OCX_Exontrol1AddGroupItem(Item) CLASS MainDialog
	// AddGroupItem event - Occurs after a new Group Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Summary",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
		var_Items:DefineSummaryBars(Item,"",-3,"")
RETURN NIL

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Task",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
RETURN NIL

METHOD OCX_Exontrol1LayoutChanged() CLASS MainDialog
	// LayoutChanged event - Occurs when column's position or column's size is changed.
	oDCOCX_Exontrol1:Refresh()
RETURN NIL

local var_Column,var_Column1 as IColumn
local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Chart:FirstVisibleDate := SToD("19940901")
oDCOCX_Exontrol1:Chart:[PaneWidth,false] := 312
oDCOCX_Exontrol1:BackColorSortBar := oDCOCX_Exontrol1:BackColor
oDCOCX_Exontrol1:ColumnAutoResize := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:Items:AllowCellValueToItemBar := true
oDCOCX_Exontrol1:Columns:[Item,2]:[Def,exCellValueToItemBarProperty] := 1
oDCOCX_Exontrol1:Columns:[Item,4]:[Def,exCellValueToItemBarProperty] := 2
oDCOCX_Exontrol1:SortBarVisible := true
oDCOCX_Exontrol1:SortBarCaption := "Drag a <b>column</b> header here to group by that column."
oDCOCX_Exontrol1:AllowGroupBy := true
oDCOCX_Exontrol1:Columns:[Item,1]:SortOrder := SortAscending
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Position")}
	var_Column:FormatColumn := "(0:= (1 rpos '')) right ( ( 1:= ( =:0 rfind `.` ) ) != -1 ? =:1 : len(=:0))"
	var_Column:Visible := false
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Position")}
	var_Column1:FormatColumn := "(1 rpos '') contains '.'"
	var_Column1:Visible := false
oDCOCX_Exontrol1:ConditionalFormats:Add("(%C13 mod 2) != 0",nil):BackColor := RGB(240,240,240)
oDCOCX_Exontrol1:ConditionalFormats:Add("%C14 = 0",nil):BackColor := RGB(190,190,190)
oDCOCX_Exontrol1:EndUpdate()

1725
What is the difference between %0 and %C0, when using in expressions ( format, conditional format, computed fields, and so on )

local var_Column,var_Column1 as IColumn
local var_Editor as IEditor
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Chart:[PaneWidth,true] := 0
oDCOCX_Exontrol1:HeaderAppearance := Etched
oDCOCX_Exontrol1:HeaderHeight := 24
oDCOCX_Exontrol1:ScrollBySingleLine := true
oDCOCX_Exontrol1:DrawGridLines := exRowLines
IColumn{oDCOCX_Exontrol1:Columns:Add("Value")}:[Def,exCellValueFormat] := 1
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("FormatColumn = `%0` ~ CellValue")}
	var_Column:FormatColumn := "%0"
	var_Column:[Def,exCellSingleLine] := false
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("FormatColumn = `%C0`~ CellCaption")}
	var_Column1:FormatColumn := "%C0"
	var_Column1:[Def,exCellSingleLine] := false
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem(1.1234)
	var_Items:[CellValueFormat,var_Items:AddItem("<sha ;;0>This <fgcolor=FF0000>is a <s><b>HTM</fgcolor>L</b> text</s>."),0] := exHTML
	var_Editor := var_Items:[CellEditor,var_Items:AddItem(3),nil]
		var_Editor:EditType := CheckListType
		var_Editor:AddItem(1,"Border",nil)
		var_Editor:AddItem(2,"Thick",nil)
		var_Editor:AddItem(4,"Shadow",nil)
	var_Items:[FormatCell,var_Items:AddItem(10000),0] := "`<b>` + currency(value)"
oDCOCX_Exontrol1:EndUpdate()

1724
How can I alternate colors for each group header ( not-subroup ), with a different background color, while items of the same group showing with a different color

METHOD OCX_Exontrol1AddGroupItem(Item) CLASS MainDialog
	// AddGroupItem event - Occurs after a new Group Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Summary",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
		var_Items:DefineSummaryBars(Item,"",-3,"")
RETURN NIL

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Task",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
RETURN NIL

METHOD OCX_Exontrol1LayoutChanged() CLASS MainDialog
	// LayoutChanged event - Occurs when column's position or column's size is changed.
	oDCOCX_Exontrol1:Refresh()
RETURN NIL

local var_Column,var_Column1 as IColumn
local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Chart:FirstVisibleDate := SToD("19940901")
oDCOCX_Exontrol1:Chart:[PaneWidth,false] := 312
oDCOCX_Exontrol1:BackColorSortBar := oDCOCX_Exontrol1:BackColor
oDCOCX_Exontrol1:ColumnAutoResize := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:Items:AllowCellValueToItemBar := true
oDCOCX_Exontrol1:Columns:[Item,2]:[Def,exCellValueToItemBarProperty] := 1
oDCOCX_Exontrol1:Columns:[Item,4]:[Def,exCellValueToItemBarProperty] := 2
oDCOCX_Exontrol1:SortBarVisible := true
oDCOCX_Exontrol1:SortBarCaption := "Drag a <b>column</b> header here to group by that column."
oDCOCX_Exontrol1:AllowGroupBy := true
oDCOCX_Exontrol1:Columns:[Item,1]:SortOrder := SortAscending
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Position")}
	var_Column:FormatColumn := "(0:= (1 rpos '')) left ( ( 1:= ( =:0 lfind `.` ) ) != -1 ? =:1 : len(=:0))"
	var_Column:Visible := false
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Position")}
	var_Column1:FormatColumn := "(1 rpos '') contains '.'"
	var_Column1:Visible := false
oDCOCX_Exontrol1:ConditionalFormats:Add("(%C13 mod 2) != 0",nil):BackColor := RGB(240,240,240)
oDCOCX_Exontrol1:ConditionalFormats:Add("%C14 = 0",nil):BackColor := RGB(190,190,190)
oDCOCX_Exontrol1:EndUpdate()

1723
How can I highlight each group header, with a different background color (method 2)

METHOD OCX_Exontrol1AddGroupItem(Item) CLASS MainDialog
	// AddGroupItem event - Occurs after a new Group Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:[ItemBackColor,Item] := RGB(190,190,190)
		var_Items:AddBar(Item,"Summary",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
		var_Items:DefineSummaryBars(Item,"",-3,"")
RETURN NIL

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Task",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
RETURN NIL

METHOD OCX_Exontrol1LayoutChanged() CLASS MainDialog
	// LayoutChanged event - Occurs when column's position or column's size is changed.
	oDCOCX_Exontrol1:Refresh()
RETURN NIL

local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Chart:FirstVisibleDate := SToD("19940901")
oDCOCX_Exontrol1:Chart:[PaneWidth,false] := 312
oDCOCX_Exontrol1:BackColorSortBar := oDCOCX_Exontrol1:BackColor
oDCOCX_Exontrol1:ColumnAutoResize := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:Items:AllowCellValueToItemBar := true
oDCOCX_Exontrol1:Columns:[Item,2]:[Def,exCellValueToItemBarProperty] := 1
oDCOCX_Exontrol1:Columns:[Item,4]:[Def,exCellValueToItemBarProperty] := 2
oDCOCX_Exontrol1:SortBarVisible := true
oDCOCX_Exontrol1:SortBarCaption := "Drag a <b>column</b> header here to group by that column."
oDCOCX_Exontrol1:AllowGroupBy := true
oDCOCX_Exontrol1:Columns:[Item,1]:SortOrder := SortAscending
oDCOCX_Exontrol1:EndUpdate()

1722
How can I highlight each group header ( not-subroup ), with a different background color (method 1)

METHOD OCX_Exontrol1AddGroupItem(Item) CLASS MainDialog
	// AddGroupItem event - Occurs after a new Group Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Summary",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
		var_Items:DefineSummaryBars(Item,"",-3,"")
RETURN NIL

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Task",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
RETURN NIL

METHOD OCX_Exontrol1LayoutChanged() CLASS MainDialog
	// LayoutChanged event - Occurs when column's position or column's size is changed.
	oDCOCX_Exontrol1:Refresh()
RETURN NIL

local var_Column,var_Column1 as IColumn
local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Chart:FirstVisibleDate := SToD("19940901")
oDCOCX_Exontrol1:Chart:[PaneWidth,false] := 312
oDCOCX_Exontrol1:BackColorSortBar := oDCOCX_Exontrol1:BackColor
oDCOCX_Exontrol1:ColumnAutoResize := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:Items:AllowCellValueToItemBar := true
oDCOCX_Exontrol1:Columns:[Item,2]:[Def,exCellValueToItemBarProperty] := 1
oDCOCX_Exontrol1:Columns:[Item,4]:[Def,exCellValueToItemBarProperty] := 2
oDCOCX_Exontrol1:SortBarVisible := true
oDCOCX_Exontrol1:SortBarCaption := "Drag a <b>column</b> header here to group by that column."
oDCOCX_Exontrol1:AllowGroupBy := true
oDCOCX_Exontrol1:Columns:[Item,1]:SortOrder := SortAscending
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Position")}
	var_Column:FormatColumn := "(0:= (1 rpos '')) left ( ( 1:= ( =:0 lfind `.` ) ) != -1 ? =:1 : len(=:0))"
	var_Column:Visible := false
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("Position")}
	var_Column1:FormatColumn := "(1 rpos '') contains '.'"
	var_Column1:Visible := false
oDCOCX_Exontrol1:ConditionalFormats:Add("%C14 = 0",nil):BackColor := RGB(190,190,190)
oDCOCX_Exontrol1:EndUpdate()

1721
The BackColorAlternate displays each second row with a different background color. Is it possible to apply a different background color, for each sub-tree, ConditionalFormats, Add

METHOD OCX_Exontrol1LayoutChanged() CLASS MainDialog
	// LayoutChanged event - Occurs when column's position or column's size is changed.
	oDCOCX_Exontrol1:Refresh()
RETURN NIL

METHOD OCX_Exontrol1Sort() CLASS MainDialog
	// Sort event - Fired when the control sorts a column.
	oDCOCX_Exontrol1:Refresh()
RETURN NIL

local var_Column,var_Column1,var_Column2 as IColumn
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:LinesAtRoot := exLinesAtRoot
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("P1")}
	var_Column:[Def,exCellHasCheckBox] := true
	var_Column:PartialCheck := true
oDCOCX_Exontrol1:Chart:[PaneWidth,true] := 0
var_Column1 := IColumn{oDCOCX_Exontrol1:Columns:Add("P2")}
	var_Column1:[Def,exCellHasCheckBox] := true
	var_Column1:PartialCheck := true
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Root 1")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
	var_Items:[ExpandItem,h] := true
	h := var_Items:AddItem("Root 2")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
	var_Items:[ExpandItem,h] := true
	h := var_Items:AddItem("Root 2")
	var_Items:InsertItem(h,nil,"Child 1")
	var_Items:InsertItem(h,nil,"Child 2")
	var_Items:[ExpandItem,h] := true
var_Column2 := IColumn{oDCOCX_Exontrol1:Columns:Add("Position")}
	var_Column2:FormatColumn := "(0:= (1 rpos '')) left ( ( 1:= ( =:0 lfind `.` ) ) != -1 ? =:1 : len(=:0))"
	var_Column2:Visible := false
oDCOCX_Exontrol1:ConditionalFormats:Add("(%C2 mod 2) != 0",nil):BackColor := RGB(240,240,240)
oDCOCX_Exontrol1:EndUpdate()

1720
The BackColorAlternate displays each second row with a different background color. Is it possible to apply a different background color, for 2nd, 3rd, 4th, row, and so on

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Task",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
RETURN NIL

METHOD OCX_Exontrol1LayoutChanged() CLASS MainDialog
	// LayoutChanged event - Occurs when column's position or column's size is changed.
	oDCOCX_Exontrol1:Refresh()
RETURN NIL

local var_Column as IColumn
local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Chart:FirstVisibleDate := SToD("19940901")
oDCOCX_Exontrol1:Chart:[PaneWidth,false] := 312
oDCOCX_Exontrol1:ColumnAutoResize := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:Items:AllowCellValueToItemBar := true
oDCOCX_Exontrol1:Columns:[Item,2]:[Def,exCellValueToItemBarProperty] := 1
oDCOCX_Exontrol1:Columns:[Item,4]:[Def,exCellValueToItemBarProperty] := 2
oDCOCX_Exontrol1:Columns:[Item,1]:SortOrder := SortAscending
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Position")}
	var_Column:FormatColumn := "1 apos ''"
	var_Column:Visible := false
oDCOCX_Exontrol1:ConditionalFormats:Add("(%C13 mod 5) = 1",nil):BackColor := RGB(128,128,128)
oDCOCX_Exontrol1:ConditionalFormats:Add("(%C13 mod 5) = 2",nil):BackColor := RGB(164,164,164)
oDCOCX_Exontrol1:ConditionalFormats:Add("(%C13 mod 5) = 3",nil):BackColor := RGB(190,190,190)
oDCOCX_Exontrol1:ConditionalFormats:Add("(%C13 mod 5) = 4",nil):BackColor := RGB(240,240,240)
oDCOCX_Exontrol1:EndUpdate()

1719
The BackColorAlternate displays each second row with a different background color. The question I have it is possible to apply a different background color for 3rd, 4th, row, and so on

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Task",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
RETURN NIL

METHOD OCX_Exontrol1LayoutChanged() CLASS MainDialog
	// LayoutChanged event - Occurs when column's position or column's size is changed.
	oDCOCX_Exontrol1:Refresh()
RETURN NIL

local var_Column as IColumn
local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Chart:FirstVisibleDate := SToD("19940901")
oDCOCX_Exontrol1:Chart:[PaneWidth,false] := 312
oDCOCX_Exontrol1:ColumnAutoResize := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:Items:AllowCellValueToItemBar := true
oDCOCX_Exontrol1:Columns:[Item,2]:[Def,exCellValueToItemBarProperty] := 1
oDCOCX_Exontrol1:Columns:[Item,4]:[Def,exCellValueToItemBarProperty] := 2
oDCOCX_Exontrol1:Columns:[Item,1]:SortOrder := SortAscending
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Position")}
	var_Column:FormatColumn := "1 apos ''"
	var_Column:Visible := false
oDCOCX_Exontrol1:ConditionalFormats:Add("(%C13 mod 4) = 0",nil):BackColor := RGB(240,240,240)
oDCOCX_Exontrol1:EndUpdate()

1718
The BackColorAlternate looks fine for flat tables, but how about using it when displaying a hierarchy/tree, like grouping rows. The sample alternate colors for each group found

METHOD OCX_Exontrol1AddGroupItem(Item) CLASS MainDialog
	// AddGroupItem event - Occurs after a new Group Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Summary",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
		var_Items:DefineSummaryBars(Item,"",-3,"")
RETURN NIL

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Task",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
RETURN NIL

METHOD OCX_Exontrol1LayoutChanged() CLASS MainDialog
	// LayoutChanged event - Occurs when column's position or column's size is changed.
	oDCOCX_Exontrol1:Refresh()
RETURN NIL

local var_Column as IColumn
local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Chart:FirstVisibleDate := SToD("19940901")
oDCOCX_Exontrol1:Chart:[PaneWidth,false] := 312
oDCOCX_Exontrol1:BackColorSortBar := oDCOCX_Exontrol1:BackColor
oDCOCX_Exontrol1:ColumnAutoResize := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:Items:AllowCellValueToItemBar := true
oDCOCX_Exontrol1:Columns:[Item,2]:[Def,exCellValueToItemBarProperty] := 1
oDCOCX_Exontrol1:Columns:[Item,4]:[Def,exCellValueToItemBarProperty] := 2
oDCOCX_Exontrol1:SortBarVisible := true
oDCOCX_Exontrol1:SortBarCaption := "Drag a <b>column</b> header here to group by that column."
oDCOCX_Exontrol1:AllowGroupBy := true
oDCOCX_Exontrol1:Columns:[Item,1]:SortOrder := SortAscending
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Position")}
	var_Column:FormatColumn := "(0:= (1 rpos '')) left ( ( 1:= ( =:0 lfind `.` ) ) != -1 ? =:1 : len(=:0))"
	var_Column:Visible := false
oDCOCX_Exontrol1:ConditionalFormats:Add("(%C13 mod 2) != 0",nil):BackColor := RGB(240,240,240)
oDCOCX_Exontrol1:EndUpdate()

1717
How do I show the chart's labels in 24-hour clock format

local var_Chart as IChart
local var_Level,var_Level1,var_Level2 as ILevel

var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:[PaneWidth,false] := 0
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:LevelCount := 3
	var_Level := var_Chart:[Level,0]
		var_Level:Label := "<%mmm%> <%d%>, <%yyyy%>"
		var_Level:Alignment := exHOutside | CenterAlignment
		var_Level:Unit := exDay
	var_Level1 := var_Chart:[Level,1]
		var_Level1:Label := "<b><%h%>:00</b>"
		var_Level1:Alignment := CenterAlignment
		var_Level1:Unit := exHour
		var_Level1:DrawTickLines := exLevelDefaultLine
		var_Level1:DrawGridLines := true
	var_Level2 := var_Chart:[Level,2]
		var_Level2:Label := "<%nn%>"
		var_Level2:Unit := exMinute
		var_Level2:Count := 15
	var_Chart:ScrollTo(SToD("20010101 08:30:00"),0)

1716
How do I show the chart's labels in 12-hour clock format

local var_Chart as IChart
local var_Level,var_Level1,var_Level2 as ILevel

var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:[PaneWidth,false] := 0
	var_Chart:FirstVisibleDate := SToD("20010101")
	var_Chart:LevelCount := 3
	var_Level := var_Chart:[Level,0]
		var_Level:Label := "<%mmm%> <%d%>, <%yyyy%>"
		var_Level:Alignment := exHOutside | CenterAlignment
		var_Level:Unit := exDay
	var_Level1 := var_Chart:[Level,1]
		var_Level1:Label := "<b><%h%>:00</b> <%AM/PM%>"
		var_Level1:Alignment := CenterAlignment
		var_Level1:Unit := exHour
		var_Level1:DrawTickLines := exLevelDefaultLine
		var_Level1:DrawGridLines := true
	var_Level2 := var_Chart:[Level,2]
		var_Level2:Label := "<%nn%>"
		var_Level2:Unit := exMinute
		var_Level2:Count := 15
	var_Chart:ScrollTo(SToD("20010101 08:30:00"),0)

1715
I would like to avoid manual typing in the date-cell because user often type wrong things (no decimal points and so on) and so the todays-date is generated for the cell. What can be done

METHOD OCX_Exontrol1KeyPress(KeyAscii) CLASS MainDialog
	// KeyPress event - Occurs when the user presses and releases an ANSI key.
	OutputDebugString(String2Psz( "if .Editying != 0 then" ))
	OutputDebugString(String2Psz( AsString(oDCOCX_Exontrol1:Editing) ))
	KeyAscii := 0
RETURN NIL

local var_Chart as IChart
local var_Column,var_Column1 as IColumn
local var_Columns as IColumns
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Columns := oDCOCX_Exontrol1:Columns
	var_Columns:Add("Tasks")
	var_Column := IColumn{var_Columns:Add("Start")}
		var_Column:[Def,exCellValueToItemBarProperty] := 1
		var_Column:Editor:EditType := DateType
	var_Column1 := IColumn{var_Columns:Add("End")}
		var_Column1:[Def,exCellValueToItemBarProperty] := 2
		var_Column1:Editor:EditType := DateType
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20060920")
	var_Chart:AllowLinkBars := true
	var_Chart:AllowCreateBar := exNoCreateBar
	var_Chart:LevelCount := 2
	var_Chart:[PaneWidth,false] := 196
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AllowCellValueToItemBar := true
	var_Items:AddBar(var_Items:AddItem("Task 1"),"Task",SToD("20060921"),SToD("20060924"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("Task 2"),"Task",SToD("20060922"),SToD("20060925"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("Task 3"),"Task",SToD("20060923"),SToD("20060926"),nil,nil)
oDCOCX_Exontrol1:EndUpdate()

1714
When a Day, Week etc is clicked how can we make it centre/zoom the chart to cover all the bars

METHOD OCX_Exontrol1OverviewZoom() CLASS MainDialog
	// OverviewZoom event - Occurs once the user selects a new time scale unit in the overview zoom area.
	local var_Chart as IChart
	var_Chart := oDCOCX_Exontrol1:Chart
		var_Chart:ScrollTo(SToD("20010101"),1)
		OutputDebugString(String2Psz( "Start" ))
		OutputDebugString(String2Psz( AsString(var_Chart:StartPrintDate) ))
		OutputDebugString(String2Psz( "End" ))
		OutputDebugString(String2Psz( AsString(var_Chart:EndPrintDate) ))
RETURN NIL

local var_Chart as IChart
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:[PaneWidth,false] := 128
	var_Chart:LevelCount := 2
	var_Chart:OverviewVisible := exOverviewShowAllVisible
	var_Chart:AllowOverviewZoom := exAlwaysZoom
	var_Chart:[Label,exSecond] := ""
	var_Chart:[Label,exMinute] := ""
	var_Chart:[Label,exHour] := ""
	var_Chart:UnitScale := exDay
	var_Chart:ScrollTo(SToD("20010101"),1)
	var_Chart:MarkTimeZone("zone",SToD("20010101"),SToD("20010102"),10516548,nil)
oDCOCX_Exontrol1:Columns:Add("Default")
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddBar(var_Items:AddItem("Item 1"),"Task",SToD("20001215"),SToD("20010110"),nil,nil)
	var_Items:AddBar(var_Items:AddItem("Item 2"),"Task",SToD("20010101"),SToD("20010105"),nil,nil)
oDCOCX_Exontrol1:EndUpdate()

1713
The first time we run the application, the day label headers looks different then pressing Week and then Day again on the control's overview part. How do we make to show the header in the same format

local var_Chart as IChart

var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:[PaneWidth,false] := 128
	var_Chart:LevelCount := 2
	var_Chart:OverviewVisible := exOverviewShowAllVisible
	var_Chart:AllowOverviewZoom := exAlwaysZoom
	var_Chart:[Label,exSecond] := ""
	var_Chart:[Label,exMinute] := ""
	var_Chart:[Label,exHour] := ""
	var_Chart:UnitScale := exDay

1712
How to sort numerically by columns

local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
IColumn{oDCOCX_Exontrol1:Columns:Add("Numeric")}:SortType := SortNumeric
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem(1)
	var_Items:AddItem(2)
	var_Items:AddItem(12)
	var_Items:AddItem(22)
oDCOCX_Exontrol1:Columns:[Item,0]:SortOrder := SortAscending
oDCOCX_Exontrol1:EndUpdate()

1711
The control does not ensure the item to fit the control's client area once the user clicks the cell's button or check box. What can be done
METHOD OCX_Exontrol1MouseDown(Button,Shift,X,Y) CLASS MainDialog
	// MouseDown event - Occurs when the user presses a mouse button.
	// Items.EnsureVisibleItem(ItemFromPoint(-1,-1,c,hit))

RETURN NIL

local var_Column as IColumn
local var_Items as IItems

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:TreeColumnIndex := -1
oDCOCX_Exontrol1:SelForeColor := oDCOCX_Exontrol1:ForeColor
var_Column := IColumn{oDCOCX_Exontrol1:Columns:Add("Buttons")}
	var_Column:Alignment := CenterAlignment
	var_Column:[Def,exCellHasButton] := true
var_Items := oDCOCX_Exontrol1:Items
	var_Items:AddItem("Button A")
	var_Items:AddItem("Button B")
	var_Items:AddItem("Button C")
oDCOCX_Exontrol1:EndUpdate()

1710
How do I arrange the levels when the user changes the scale using the control's overview part

METHOD OCX_Exontrol1OverviewZoom() CLASS MainDialog
	// OverviewZoom event - Occurs once the user selects a new time scale unit in the overview zoom area.
	local var_Chart as IChart
	OutputDebugString(String2Psz( AsString(oDCOCX_Exontrol1:Chart:UnitScale) ))
	oDCOCX_Exontrol1:EnsureVisibleColumn(0)
	var_Chart := oDCOCX_Exontrol1:Chart
		var_Chart:[Level,0]:DrawTickLines := exLevelNoLine
		var_Chart:ScrollTo(SToD("20151118"),1)
RETURN NIL

local var_Chart as IChart
local var_Level,var_Level1 as ILevel

oDCOCX_Exontrol1:BeginUpdate()
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20151118")
	var_Chart:[PaneWidth,false] := 0
	var_Chart:LevelCount := 2
	var_Chart:DrawLevelSeparator := exLevelSolidLine
	var_Level := var_Chart:[Level,0]
		var_Level:Alignment := exHOutside | CenterAlignment
		var_Level:DrawTickLines := exLevelSolidLine
		var_Level:BackColor := oDCOCX_Exontrol1:BackColor
	var_Level1 := var_Chart:[Level,1]
		var_Level1:DrawTickLines := exLevelMiddleLine | exLevelDotLine
		var_Level1:DrawTickLinesFrom(0,exLevelSolidLine)
	var_Chart:OverviewVisible := exOverviewShowAllVisible
	var_Chart:AllowOverviewZoom := exAlwaysZoom
	var_Chart:UnitWidth := 24
	var_Chart:[Label,exSecond] := ""
	var_Chart:[Label,exMinute] := ""
	var_Chart:[Label,exHour] := ""
	var_Chart:[Label,exWeek] := ""
	var_Chart:[Label,exDay] := "<|><%d%><|><%d3%>, <%m3%> <%d%>, '<%yy%><|><%dddd%>, <%mmmm%> <%d%>, <%yyyy%><||><||>4096"
	var_Chart:UnitScale := exDay
	var_Chart:ScrollTo(var_Chart:FirstVisibleDate,1)
oDCOCX_Exontrol1:Columns:Add("Default")
oDCOCX_Exontrol1:EndUpdate()

1709
I am using AllowGroupBy, the question is it is possible to add summary bars for child item, when user do grouping

METHOD OCX_Exontrol1AddGroupItem(Item) CLASS MainDialog
	// AddGroupItem event - Occurs after a new Group Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Summary",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
		var_Items:DefineSummaryBars(Item,"",-3,"")
RETURN NIL

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Task",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
RETURN NIL

local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Chart:FirstVisibleDate := SToD("19940901")
oDCOCX_Exontrol1:BackColorSortBar := oDCOCX_Exontrol1:BackColor
oDCOCX_Exontrol1:ColumnAutoResize := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:SortBarVisible := true
oDCOCX_Exontrol1:SortBarCaption := "Drag a <b>column</b> header here to group by that column."
oDCOCX_Exontrol1:AllowGroupBy := true
oDCOCX_Exontrol1:Columns:[Item,1]:SortOrder := SortAscending
oDCOCX_Exontrol1:EndUpdate()

1708
I noticed that when grouping on a field, its details are always expanded. Is it possible to show collapsed by default (method 3)

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Task",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
RETURN NIL

local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Chart:FirstVisibleDate := SToD("19940901")
oDCOCX_Exontrol1:BackColorSortBar := oDCOCX_Exontrol1:BackColor
oDCOCX_Exontrol1:ColumnAutoResize := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:SortBarVisible := true
oDCOCX_Exontrol1:SortBarCaption := "Drag a <b>column</b> header here to group by that column."
oDCOCX_Exontrol1:AllowGroupBy := true
oDCOCX_Exontrol1:Chart:ShowCollapsedBars := true
oDCOCX_Exontrol1:EndUpdate()
oDCOCX_Exontrol1:Layout := "multiplesort=" + CHR(34) + "C1:1" + CHR(34) + ";collapse=" + CHR(34) + "0-9999" + CHR(34) + ""

1707
I noticed that when grouping on a field, its details are always expanded. Is it possible to show collapsed by default (method 2)

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Task",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
RETURN NIL

local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Chart:FirstVisibleDate := SToD("19940901")
oDCOCX_Exontrol1:BackColorSortBar := oDCOCX_Exontrol1:BackColor
oDCOCX_Exontrol1:ColumnAutoResize := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:SortBarVisible := true
oDCOCX_Exontrol1:SortBarCaption := "Drag a <b>column</b> header here to group by that column."
oDCOCX_Exontrol1:AllowGroupBy := true
oDCOCX_Exontrol1:Columns:[Item,1]:SortOrder := SortAscending
oDCOCX_Exontrol1:EndUpdate()
oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:EnsureVisibleColumn(0)
oDCOCX_Exontrol1:Items:[ExpandItem,0] := false
oDCOCX_Exontrol1:EndUpdate()

1706
I noticed that when grouping on a field, its details are always expanded. Is it possible to show collapsed by default (method 1)

METHOD OCX_Exontrol1AddGroupItem(Item) CLASS MainDialog
	// AddGroupItem event - Occurs after a new Group Item has been inserted to Items collection.
	oDCOCX_Exontrol1:Items:[ExpandItem,Item] := false
RETURN NIL

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Task",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
RETURN NIL

local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Chart:FirstVisibleDate := SToD("19940901")
oDCOCX_Exontrol1:BackColorSortBar := oDCOCX_Exontrol1:BackColor
oDCOCX_Exontrol1:ColumnAutoResize := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:SortBarVisible := true
oDCOCX_Exontrol1:SortBarCaption := "Drag a <b>column</b> header here to group by that column."
oDCOCX_Exontrol1:AllowGroupBy := true
oDCOCX_Exontrol1:Columns:[Item,1]:SortOrder := SortAscending
oDCOCX_Exontrol1:EndUpdate()

1705
Is there a possibility to expand / collapse all groups (or group by group) at runtime with a method (equivalent to pressing the + or - button in the group header)

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Task",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
RETURN NIL

local var_Items as IItems
local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Chart:FirstVisibleDate := SToD("19940901")
oDCOCX_Exontrol1:BackColorSortBar := oDCOCX_Exontrol1:BackColor
oDCOCX_Exontrol1:ColumnAutoResize := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:SortBarVisible := true
oDCOCX_Exontrol1:SortBarCaption := "Drag a <b>column</b> header here to group by that column."
oDCOCX_Exontrol1:AllowGroupBy := true
oDCOCX_Exontrol1:Columns:[Item,1]:SortOrder := SortAscending
oDCOCX_Exontrol1:EndUpdate()
oDCOCX_Exontrol1:EnsureVisibleColumn(0)
oDCOCX_Exontrol1:BeginUpdate()
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[ExpandItem,var_Items:[RootItem,0]] := false
	var_Items:[ExpandItem,var_Items:[RootItem,1]] := false
	var_Items:[ExpandItem,var_Items:[RootItem,2]] := false
oDCOCX_Exontrol1:EndUpdate()

1704
Is there a possibility to expand / collapse all groups (or group by group) at runtime with a method (equivalent to pressing the + or - button in the group header)

METHOD OCX_Exontrol1AddItem(Item) CLASS MainDialog
	// AddItem event - Occurs after a new Item has been inserted to Items collection.
	local var_Items as IItems
	var_Items := oDCOCX_Exontrol1:Items
		var_Items:AddBar(Item,"Task",var_Items:[CellValue,Item,2],var_Items:[CellValue,Item,4],nil,nil)
RETURN NIL

local var_Items as IItems
local rs as _Recordset

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:Chart:FirstVisibleDate := SToD("19940901")
oDCOCX_Exontrol1:BackColorSortBar := oDCOCX_Exontrol1:BackColor
oDCOCX_Exontrol1:ColumnAutoResize := false
// Generate Source for 'Microsoft ActiveX Data Objects 6.1 Library(msado15.dll)' server from Tools\Automation Server...
rs := _Recordset{"ADOR.Recordset"}
	rs:Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExG2antt\Sample\Access\misc.accdb",3,3,0)
oDCOCX_Exontrol1:DataSource := _Recordset{rs}
oDCOCX_Exontrol1:SortBarVisible := true
oDCOCX_Exontrol1:SortBarCaption := "Drag a <b>column</b> header here to group by that column."
oDCOCX_Exontrol1:AllowGroupBy := true
oDCOCX_Exontrol1:Columns:[Item,1]:SortOrder := SortAscending
oDCOCX_Exontrol1:EndUpdate()
oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:EnsureVisibleColumn(0)
var_Items := oDCOCX_Exontrol1:Items
	var_Items:[ExpandItem,var_Items:FirstVisibleItem] := false
oDCOCX_Exontrol1:EndUpdate()

1703
How can I move automatically a bar once another is moved ( non-working bars )

local var_Bar as IBar
local var_Chart as IChart
local var_Items as IItems
local h,h1,h2,h3 as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:MarkSearchColumn := false
oDCOCX_Exontrol1:OnResizeControl := exResizeChart
oDCOCX_Exontrol1:Columns:Add("Tasks")
IColumn{oDCOCX_Exontrol1:Columns:Add("Start")}:Visible := false
IColumn{oDCOCX_Exontrol1:Columns:Add("End")}:Visible := false
var_Chart := oDCOCX_Exontrol1:Chart
	var_Chart:FirstVisibleDate := SToD("20060920")
	var_Chart:[PaneWidth,false] := 64
	var_Bar := var_Chart:Bars:Add("Task:Split")
		var_Bar:Shortcut := "TSplit"
		var_Bar:[Def,exBarKeepWorkingCount] := true
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Project")
	var_Items:[CellValue,h,1] := SToD("20060922")
	var_Items:[CellValue,h,2] := SToD("20061003")
	var_Items:AddBar(h,"Summary",var_Items:[CellValue,h,1],var_Items:[CellValue,h,2],nil,nil)
	h1 := var_Items:InsertItem(h,nil,"Task 1")
	var_Items:[CellValue,h1,1] := var_Items:[CellValue,h,1]
	var_Items:[CellValue,h1,2] := SToD("20060926")
	var_Items:AddBar(h1,"TSplit",var_Items:[CellValue,h1,1],var_Items:[CellValue,h1,2],nil,nil)
	h2 := var_Items:InsertItem(h,nil,"Task 2")
	var_Items:[CellValue,h2,1] := var_Items:[CellValue,h1,2]
	var_Items:[CellValue,h2,2] := SToD("20060928")
	var_Items:AddBar(h2,"TSplit",var_Items:[CellValue,h2,1],var_Items:[CellValue,h2,2],nil,nil)
	var_Items:AddLink("L1",h1,"",h2,"")
	h3 := var_Items:InsertItem(h,nil,"Task 3")
	var_Items:[CellValue,h3,1] := var_Items:[CellValue,h2,2]
	var_Items:[CellValue,h3,2] := var_Items:[CellValue,h,2]
	var_Items:AddBar(h3,"TSplit",var_Items:[CellValue,h3,1],var_Items:[CellValue,h3,2],nil,nil)
	var_Items:AddLink("L2",h2,"",h3,"")
	var_Items:GroupBars(h1,"",false,h2,"",true,7,nil)
	var_Items:GroupBars(h2,"",false,h3,"",true,7,nil)
	var_Items:DefineSummaryBars(h,"",h1,"")
	var_Items:DefineSummaryBars(h,"",h2,"")
	var_Items:DefineSummaryBars(h,"",h3,"")
	var_Items:[ExpandItem,h] := true
	var_Items:[ItemBold,h] := true
oDCOCX_Exontrol1:EndUpdate()

1702
How can I get notified once the user expands a column

METHOD OCX_Exontrol1LayoutChanged() CLASS MainDialog
	// LayoutChanged event - Occurs when column's position or column's size is changed.
	OutputDebugString(String2Psz( "Column-Expanded" ))
	OutputDebugString(String2Psz( AsString(oDCOCX_Exontrol1:Columns:[Item,"C0"]:Expanded) ))
RETURN NIL

local var_Column as IColumn
local var_Columns as IColumns
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ShowFocusRect := false
oDCOCX_Exontrol1:ColumnAutoResize := false
oDCOCX_Exontrol1:DrawGridLines := exAllLines
oDCOCX_Exontrol1:BackColorLevelHeader := oDCOCX_Exontrol1:BackColor
var_Columns := oDCOCX_Exontrol1:Columns
	var_Column := IColumn{var_Columns:Add("C0")}
		var_Column:ExpandColumns := "0,1,2"
		var_Column:DisplayExpandButton := true
	var_Columns:Add("C1")
	var_Columns:Add("C2")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Cell 0.0")
	var_Items:[CellValue,h,1] := "Cell 0.1"
	var_Items:[CellValue,h,2] := "Cell 0.2"
	h := var_Items:AddItem("Cell 1.0")
	var_Items:[CellValue,h,1] := "Cell 1.1"
	var_Items:[CellValue,h,2] := "Cell 1.2"
oDCOCX_Exontrol1:EndUpdate()

1701
I am using expandable headers, the question is how I can display the column itself, not just the child columns

local var_Column as IColumn
local var_Columns as IColumns
local var_Items as IItems
local h as USUAL

oDCOCX_Exontrol1:BeginUpdate()
oDCOCX_Exontrol1:ColumnAutoResize := false
oDCOCX_Exontrol1:DrawGridLines := exAllLines
oDCOCX_Exontrol1:BackColorLevelHeader := oDCOCX_Exontrol1:BackColor
var_Columns := oDCOCX_Exontrol1:Columns
	var_Column := IColumn{var_Columns:Add("C0")}
		var_Column:ExpandColumns := "0,1,2"
		var_Column:DisplayExpandButton := true
	var_Columns:Add("C1")
	var_Columns:Add("C2")
var_Items := oDCOCX_Exontrol1:Items
	h := var_Items:AddItem("Cell 0.0")
	var_Items:[CellValue,h,1] := "Cell 0.1"
	var_Items:[CellValue,h,2] := "Cell 0.2"
	h := var_Items:AddItem("Cell 1.0")
	var_Items:[CellValue,h,1] := "Cell 1.1"
	var_Items:[CellValue,h,2] := "Cell 1.2"
oDCOCX_Exontrol1:EndUpdate()